为了账号安全,请及时绑定邮箱和手机立即绑定

从字符串中删除特殊字符并将每个字符串转换为数组项

从字符串中删除特殊字符并将每个字符串转换为数组项

白板的微信 2021-08-26 15:21:20
我有以下 str,我想通过从中删除字符“/”并将其转换为数组来对其进行清理。str 看起来像这样:var str = `“01 Lima /  / ”“01 Lima / 50 Lima / ”“01 Lima / 51 Barranca / ”“01 Lima / 50 Lima / 202 La Molina”“01 Lima / 50 Lima / 203 San Isidro”“02 Arequipa /  / ”“02 Arequipa / 63 Arequipa / ”“02 Arequipa / 64 Caylloma / ”“02 Arequipa / 63 Arequipa / 267 Cercado”`我的理想输出如下所示:["01 Lima", "01 Lima 50 Lima"] and so on我编写了以下代码,对输入进行了一些清理,但不完全是我需要的:const ubigeoParts=str.replace(/""/g,'').split('/');关于如何完成我想要的任何想法?
查看完整描述

3 回答

?
慕尼黑的夜晚无繁华

TA贡献1864条经验 获得超6个赞

如果有帮助


在两行


let replaceStr = str.replace(/\“|\”|\/|/g,'').split("\n");

replaceStr = replaceStr.map((elem) => elem.replace(/\s+/g,' ').trim());


console.log(replaceStr)

在一行


let replaceStr = str.replace(/\“|\”|\/|/g,'').split("\n").map((elem) => elem.replace(/\s+/g,' ').trim());


console.log(replaceStr)


查看完整回答
反对 回复 2021-08-26
?
LEATH

TA贡献1936条经验 获得超6个赞

您可以使用 split\n来获取每一行然后替换"/"为space


var str = `“01 Lima /  / ”

“01 Lima / 50 Lima / ”

“01 Lima / 51 Barranca / ”

“01 Lima / 50 Lima / 202 La Molina”

“01 Lima / 50 Lima / 203 San Isidro”

“02 Arequipa /  / ”

“02 Arequipa / 63 Arequipa / ”

“02 Arequipa / 64 Caylloma / ”

“02 Arequipa / 63 Arequipa / 267 Cercado”`



const res = str.split("\n").map(el => el.replace(/\s*\/\s*/g, " "))


console.log(res)


查看完整回答
反对 回复 2021-08-26
?
一只萌萌小番薯

TA贡献1795条经验 获得超7个赞

可能不是最优化的方法,但它应该可以完成工作

str.match(/“(.+)”/g).map(s => s.replace(/“|”|\s*\/\s*/g, ' ').trim())


查看完整回答
反对 回复 2021-08-26
  • 3 回答
  • 0 关注
  • 251 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信