当我发现奇怪的内容时,我正在回答question about regexes。我正在RegexPal中测试正则表达式,而与Chrome和Firefox告诉我的结果有所不同。
正则表达式是:/^\d*(\.\d{1,2}$)?/
。
在Firefox和Chrome中:/^\d*(\.\d{1,2}$)?/.test('-1')
返回true
,但是RegexPal表示不匹配。
http://regexpal.com/?flags=m®ex=%5E%5Cd%2A(%5C.%5Cd%7B1%2C2%7D%24)%3F&input=-1
我的猜测是它与正则表达式不匹配的事实有关,我的意思是空字符串。
正则表达式匹配字符串的开头,然后是数字0,然后是组的0,因此它会“匹配” -1
,因为它适合那个模子,但是“匹配”将是“无”(空字符串)。
为什么RegexPal说不匹配,但是我的网络浏览器说不匹配?
最佳答案
RegexPal正在运行,但这并不明显。正则表达式匹配空字符串,因此RegexPal会为您突出显示该字符串。
好吧,由于空字符串为空,所以您看不到它是高亮显示的。
关于javascript - RegexPal与浏览器不同,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13383142/