JavaScript 正则表达式 - lastIndex


描述

lastIndex:RegExp 对象的读/写属性。对于设置了 “g” 属性的正则表达式,它包含一个整数,该整数指定紧跟在 RegExp.exec()  RegExp.test() 方法找到的最后一个匹配项之后的字符位置。这些方法使用此属性作为它们执行的下一次搜索的起点。

此属性允许您重复调用这些方法,以循环访问字符串中的所有匹配项,并且仅在设置了 “g” 修饰符时有效。

此属性是读/写的,因此您可以随时设置它以指定下一个搜索在目标字符串中应开始的位置。exec()  test() 在找不到匹配项(或其他匹配项)时自动将 lastIndex 重置为 0。

语法

它的语法如下 -

RegExpObject.lastIndex

返回值

返回一个整数,该整数指定紧跟在最后一个匹配项之后的字符位置。

 <script type = "text/javascript">
    var str = "Javascript is an interesting scripting language";
    var re = new RegExp( "script", "g" );
    
    re.test(str);
    document.write("Test 1 - Current Index: " +  re.lastIndex); 
    
    re.test(str);
    document.write("<br />Test 2 - Current Index: " + re.lastIndex); 
 </script>     

输出

Test 1 - Current Index: 10
Test 2 - Current Index: 35