自己在做一个JS验证的过程中,同一个规则,对同一个匹配对象,匹配多次的情况下,需要特殊处理。
如
var test="彩民擂台之林平"; var user = /\w+|[\u4E00-\u9F5A]+/g;//中英文,汉字正则 alert(user.test(test)); alert(user.test(test)); 你想到过他的结果吗? 大家不妨自己先想想结果,然后自己测试下。。。
结果是: true false
包括把 正则 改成
var user = new RegExp("\w+|[\u4E00-\u9F5A]+","g");//中英文,汉字正则
有意想不到出现。。。
^-^
本文探讨了使用JavaScript正则表达式进行多次匹配时遇到的一个意外现象:即使针对同一字符串和相同的正则表达式,连续调用test方法会得到不同的结果。通过一个具体的例子展示了这一现象,并邀请读者一同思考其背后的原因。
694

被折叠的 条评论
为什么被折叠?



