JavaScript正则表达式下次匹配起始位置|RegExp LastIndex 属性

JavaScript RegExp 对象


定义与用法

lastIndex 属性用于规定下次匹配的起始位置。

该属性只有设置标志 g 才能使用。

提示:

  • 上次匹配的结果是由方法 RegExp.exec() 和 RegExp.test() 找到的,它们都以 lastIndex 属性所指的位置作为下次检索的起始点。这样,就可以通过反复调用这两个方法来遍历一个字符串中的所有匹配文本。
  • 该属性是可读可写的。只要目标字符串的下一次搜索开始,就可以对它进行设置。
  • 当方法 exec() 或 test() 再也找不到可以匹配的文本时,它们会自动把 lastIndex 属性重置为 0。

语法格式

RegExpObject.lastIndex


示例代码

在字符串中全局试试子字符串 “ain” , 并输出匹配完成之后的 lastIndex 属性::

var str="The rain in Spain stays mainly in the plain";
var patt1=/ain/g;
 
while (patt1.test(str)==true) 
{
    document.write("'ain' found. Index now at: "+patt1.lastIndex);
    document.write("<br>");
}

亲自试试


浏览器支持

属性Google ChromeInternet ExplorerFirefoxSafariOpera
LastIndexYesYesYesYesYes

所有主要浏览器都支持 lastIndex 属性。


JavaScript RegExp 对象


相关