Javascript 中的 RegExp 对象是有状态的,初次调用之后会保存上次找到的位置,之后调用时会从lastIndex开始查找匹配,所以会出现同一个正则表达式,有时候找的到,有时候返回null的情形。要初始化匹配状态,可以通过重置lastIndex。
reg.lastIndex = 0;
Javascript - The same RegExp behave differently
时间: 2024-11-06 11:25:49
Javascript 中的 RegExp 对象是有状态的,初次调用之后会保存上次找到的位置,之后调用时会从lastIndex开始查找匹配,所以会出现同一个正则表达式,有时候找的到,有时候返回null的情形。要初始化匹配状态,可以通过重置lastIndex。
reg.lastIndex = 0;
Javascript - The same RegExp behave differently