ES6 - RegExp lastIndex



lastIndex 是 RegExp 物件的一個可讀寫屬性。對於設定了 "g" 屬性的正則表示式,它包含一個整數,該整數指定由 RegExp.exec() 和 RegExp.test() 方法找到的最後一個匹配項之後緊跟的字元位置。這些方法使用此屬性作為它們進行下一次搜尋的起點。

此屬性允許您重複呼叫這些方法,以迴圈遍歷字串中的所有匹配項,並且僅當設定了 "g" 修飾符時才有效。

此屬性是可讀寫的,因此您可以隨時設定它以指定目標字串中下一次搜尋應開始的位置。exec() 和 test() 在找不到匹配項(或其他匹配項)時會自動將 lastIndex 重置為 0。

語法

RegExpObject.lastIndex       

返回值

返回一個整數,該整數指定最後一個匹配項之後緊跟的字元位置。

示例

var str = "Javascript is an interesting scripting language";
var re = new RegExp( "script", "g" );
re.test(str);
console.log("Test 1 - Current Index: " + re.lastIndex);
re.test(str);
console.log("Test 2 - Current Index: " + re.lastIndex)

輸出

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