由于反斜杠是特殊字符,所以是不能直接放到字符串中的,会被js转义,比如你的
var str = "adc\123\890\ds"
\123会被js自动转义为大写字母S,后面两个\无法转义则会缓肆被自动删除,所以str的实际值并不是你想象中的 "adc30\ds",而是"adcS890ds"!!!
要想实现你的目的,必须用两个反斜杠来表示,即:老碧
var str = "adc\\123\\890\\ds"
这个时候str的值就是 "侍哪举adc30\ds" 了!
这样再用 str.split("\\") 就可以分割为数组了!
正则表达式的前后使用/是语法规定,犹如字符串的前后使用引号一样。你这个地方加不加g无所谓的,g表示多次匹配,只有在需要对每液轿旁个匹配的项目进行处理(例如替换)时才有特殊意义。
第一个因为没有^和$,所以只有要数字和-就对,第二个有这两个符号帆薯,^表示开始,$表示结束,整体的意思就是必须完整匹配,闹橡不得有其它内容。例如ABC028-88888就可以匹配第一种方式,但是在第二种就会失败。
还有问题吗?
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)