我正在尝试将字符串与正则表达式匹配,如下所示。 Jsfiddle按预期返回具有匹配字符串的数组。但是如果我在浏览器控制台中运行以下语句,它将返回null。我尝试过ie11,Chrome,Mozilla。任何人都能解释为什么会出现这种差异吗?我错过了什么。
"201458".match(/^20['^\s']{4,}$|^$/)
答案 0 :(得分:0)
它不应该匹配。您正在寻找20
后跟四个或更多撇号,插入符号或空白字符(后跟字符串结尾); 1
不是那些。
['^]
是"撇号或插入"。[^']
是"不是撇号"。当开始时,Caret只有它的特殊功能;撇号在正则表达式中没有任何特殊功能。
如果您发现这与jsfiddle匹配,请链接所述小提琴;我会非常惊讶。