我有这个字符串
let str = "name1,name2/name3"
我想在","one_answers"/"上进行拆分,有没有一种方法可以在不使用regexp的情况下进行拆分?
这是想要的输出
name1
name2
name3
有点像马戏团,但完成了:
let str = "name1,name2/name3";
str.split("/").join(",").split(",");
将所有要拆分的字符转换为一个字符,并在此基础上执行split
。
您可以先通过,
进行拆分,然后再次转换为数组,再通过/
进行拆分
str.split(",").join("/").split("/")
如果没有regexp,您可以使用此技巧
str.split('/').join(',').split(',')
使用.split((方法:
const names = "name1,name2/name3".split(/[,/]/);
您仍然需要使用regex文本作为要拆分的标记,但不需要特别使用regex方法。
使用String.spit()
即可发挥想象力。
let str = "name1,name2/name3";
let str1 = str.split(",");
let str2 = str1[1].split("/");
let result = [str1[0],str2[0],str2[1]];
console.log(result);
如果您不想使用regex,可以使用以下函数:
function split (str, seps) {
sep1 = seps.pop();
seps.forEach(sep => {
str = str.replace(sep, sep1);
})
return str.split(sep1);
}
用法:
const separators = [',', ';', '.', '|', ' '];
const myString = 'abc,def;ghi jkl';
console.log(split(myString, separators));
您可以使用regexp:
"name1,name2/name3".split(/,|;| |//);
这将由,
、;
、或CCD_8 分割
或
"name1,name2/name3".split(/W/)
这将被任何非字母数字字符分割