ES6 - Último índice de expresión regular

lastIndex una propiedad de lectura / escritura de objetos RegExp. Para las expresiones regulares con el conjunto de atributos "g", contiene un número entero que especifica la posición del carácter inmediatamente después de la última coincidencia encontrada por los métodos RegExp.exec () y RegExp.test (). Estos métodos utilizan esta propiedad como punto de partida para la próxima búsqueda que realizan.

Esta propiedad le permite llamar a esos métodos repetidamente, recorrer todas las coincidencias en una cadena y funciona solo si el modificador "g" está establecido.

Esta propiedad es de lectura / escritura, por lo que puede configurarla en cualquier momento para especificar en qué parte de la cadena de destino debe comenzar la siguiente búsqueda. exec () y test () restablecen automáticamente lastIndex a 0 cuando no pueden encontrar una coincidencia (u otra coincidencia).

Sintaxis

RegExpObject.lastIndex

Valor devuelto

Devuelve un número entero que especifica la posición del carácter inmediatamente después de la última coincidencia.

Ejemplo

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)

Salida

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