lastIndex, propriété
Mise à jour : novembre 2007
Retourne la position du caractère où débute la prochaine correspondance trouvée dans une chaîne recherchée.
{RegExp | reArray}.lastIndex
Arguments
RegExp
Obligatoire. Objet RegExp global.reArray
Obligatoire. Tableau retourné par la méthode exec d'un objet Regular Expression.
Notes
La propriété lastIndex est à base zéro, c'est-à-dire que l'index du premier caractère correspond à la valeur zéro. Sa valeur initiale est –1. Sa valeur change chaque fois qu'une correspondance est trouvée.
La propriété lastIndex de l'objet RegExp est modifiée par les méthodes exec et test de l'objet RegExp et par les méthodes match, replace et split de l'objet String.
Les règles suivantes s'appliquent aux valeurs de la propriété lastIndex :
Si aucune correspondance n'est trouvée, la propriété lastIndex prend la valeur -1.
Si la valeur lastIndex est supérieure à la longueur de la chaîne, les méthodes test et exec échouent, et lastIndex prend la valeur -1.
Si la valeur lastIndex est égale à la longueur de la chaîne, l'expression régulière correspond si le modèle correspond à la chaîne vide. Sinon, il n'y a pas correspondance et lastIndex reprend la valeur -1.
Sinon, lastIndex prend pour valeur la première position qui suit la dernière correspondance trouvée.
La valeur initiale de la propriété RegExp.lastIndex est –1. Sa valeur est en lecture seule et change chaque fois qu'une correspondance est trouvée.
Remarque : |
---|
Les propriétés de l'objet RegExp ne sont pas disponibles en mode rapide, qui est le mode d'exécution par défaut de JScript. Pour compiler un programme à partir de la ligne de commande qui utilise ces propriétés, vous devez désactiver l'option fast en utilisant /fast-. Il est déconseillé de désactiver l'option fast dans ASP.NET en raison des problèmes de threads qui peuvent en résulter. |
Exemple
L'exemple ci-dessous illustre l'utilisation de la propriété lastIndex. Cette fonction itère une chaîne recherchée et affiche les valeurs index et lastIndex pour chaque mot de la chaîne.
var src : String = "The rain in Spain falls mainly in the plain.";
var re : RegExp = /\w+/g;
var arr : Array;
while ((arr = re.exec(src)) != null)
print(arr.index + "-" + arr.lastIndex + "\t" + arr);
Le résultat généré par ce programme est le suivant :
0-3 The
4-8 rain
9-11 in
12-17 Spain
18-23 falls
24-30 mainly
31-33 in
34-37 the
38-43 plain
Configuration requise
S'applique à :
Voir aussi
Concepts
Syntaxe d'une expression régulière