ES6 - RegExp lastIndex

lastIndex une propriété en lecture / écriture des objets RegExp. Pour les expressions régulières avec le jeu d'attributs "g", il contient un entier qui spécifie la position du caractère immédiatement après la dernière correspondance trouvée par les méthodes RegExp.exec () et RegExp.test (). Ces méthodes utilisent cette propriété comme point de départ de la prochaine recherche qu'elles effectuent.

Cette propriété vous permet d'appeler ces méthodes à plusieurs reprises, de parcourir toutes les correspondances dans une chaîne et ne fonctionne que si le modificateur "g" est défini.

Cette propriété est en lecture / écriture, vous pouvez donc la définir à tout moment pour spécifier où dans la chaîne cible, la prochaine recherche doit commencer. exec () et test () remettent automatiquement le lastIndex à 0 lorsqu'ils ne parviennent pas à trouver une correspondance (ou une autre correspondance).

Syntaxe

RegExpObject.lastIndex

Valeur de retour

Renvoie un entier qui spécifie la position du caractère immédiatement après la dernière correspondance.

Exemple

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)

Production

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