当在 split()
中使用正则表达式作为分隔符时,有没有办法知道它匹配的是什么字符串?
例子:
var
string = "12+34-12",
numberlist = split(/[^0-9]/);
我怎么知道它找到的是 +
还是 -
?
最佳答案
您还可以使用捕获组来捕获在 String#split
中使用的字符串:
var m = string.split(/(\D)/);
//=> ["12", "+", "34", "-", "12"]
要看到这里的区别是没有捕获组的输出:
var m = string.split(/\D/);
//=> ["12", "34", "12"]
PS:我已将您对 [^0-9]
的使用更改为 \D
,因为它们是等效的。
关于javascript - js split() 使用正则表达式,匹配什么表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24962542/