我不擅长正则表达式,这就是为什么我在这里问。
假设我有以下字符串:
let a = 'A,B,C,D',
b = 'A,B|C,D',
c = 'A|B|C|D'
我想用逗号,
和管道|
分割它们。像这样:
// a.split(regex)
或考虑性能时类似。
以上所有字符串应为// [A, B, C, D]
我将如何为此编写正则表达式。另外,欢迎您教自己正则表达式。
答案 0 :(得分:4)
尝试RegEx /[,|]/
通过将正则表达式的一部分放在圆括号内,可以将正则表达式的该部分组合在一起。
此处,|
与列表中的单个字符匹配。
let a = 'A,B,C,D',
b = 'A,B|C,D',
c = 'A|B|C|D'
a = a.split(/[,|]/);
b = b.split(/[,|]/);
c = c.split(/[,|]/);
console.log(a);
console.log(b);
console.log(c);
答案 1 :(得分:4)
您可以尝试以下方法:
str.split(/[|,]+/)
在这里,正则表达式指定|
和,
可以出现1次或多次,如果找到,它将进行分割功能。
这是测试正则表达式的最佳工具: https://regex101.com/
我在这里了解了我的正则表达式: https://regexr.com/
希望这会有所帮助!