JS正则表达式中的匹配问题

前几天遇到个匹配ip地址的正则表达式问题,以下图图片描述正则表达式

图中变量re就是变量ip的正则表达式,但为何一样的匹配为何结果倒是一下true一下false呢?spa

lastIndex

看了正则表达式的一些方法,发现有个lastIndex,它表示下次匹配从字符串的第几个字符开始,初始值是0;当我用了全局g的时候。若是匹配成功,则lastIndex变成匹配字符串后面的位置,若是没有匹配成功,则lastIndex重置为0;lastIndex是正则对象的属性,不关心字符串是不是同一个,因此即便匹配的字符串在变,lastIndex也不会清零。以下图图片描述3d

问题解决

最后我把全局g去掉的话,以下图图片描述对象

解决了,感谢阅读blog

相关文章
相关标签/搜索