JavaScript – RegExp lastIndex 属性
描述
lastIndex 是 RegExp 对象的可读写属性。对于设置了 “g” 属性的正则表达式,它包含一个整数,该整数指定了 RegExp.exec() 和 RegExp.test() 方法找到的最后一个匹配后紧接着的字符位置。这些方法使用此属性作为下一次搜索的起点。
此属性允许您多次调用这些方法,以循环遍历字符串中的所有匹配项,只有在设置了 “g” 修饰符时才能正常工作。
此属性是可读写的,因此你可以随时设置它,以指定下一次搜索在目标字符串的何处开始。当 exec() 和 test() 无法找到匹配项(或另一个匹配项)时,它们会自动将 lastIndex 重置为 0。
语法
其语法如下 –
RegExpObject.lastIndex
返回值
返回一个整数,指定最后一个匹配项后紧接着的字符位置。
示例
请尝试以下示例程序。
<html>
<head>
<title>JavaScript RegExp lastIndex Property</title>
</head>
<body>
<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>
</body>
</html>
输出
Test 1 - Current Index: 10
Test 2 - Current Index: 35