86 of 264 menu

Méthode exec

La méthode exec effectue une recherche dans une chaîne selon une expression régulière donnée. Le résultat retourné est la sous-chaîne trouvée et ses groupes de capture. De plus, chaque appel ultérieur de cette méthode commencera la recherche à partir de l'endroit où la sous-chaîne trouvée précédemment s'est terminée. Si aucune correspondance n'est trouvée - null est retourné.

Syntaxe

expression_régulière.test(chaîne);

Exemple

Vérifions le fonctionnement de la méthode :

let str = '12 34 56'; let reg = /\d+/g; let res1 = reg.exec(str); console.log(res1); let res2 = reg.exec(str); console.log(res2); let res3 = reg.exec(str); console.log(res3); let res4 = reg.exec(str); console.log(res4);

Résultat de l'exécution du code :

[12] [34] [56] null

Exemple

Utilisons la méthode dans une boucle :

let str = '12 34 56'; let reg = /\d+/g; let res; while (res = reg.exec(str)) { console.log(res); }

Résultat de l'exécution du code :

[12] [34] [56]

Exemple

Les correspondances trouvées peuvent être décomposées en groupes de capture :

let str = '12 34 56'; let reg = /(\d)(\d)/g; let res; while (res = reg.exec(str)) { console.log(res); }

Résultat de l'exécution du code :

[12, 1, 2] [34, 3, 4] [56, 5, 6]

Exemple

À l'aide de la propriété lastIndex on peut définir la position à partir de laquelle commencer la recherche :

let str = '12 34 56'; let reg = /\d+/g; reg.lastIndex = 2; let res1 = reg.exec(str) console.log(res1); let res2 = reg.exec(str) console.log(res2);

Résultat de l'exécution du code :

[34] [56]

Exemple

À l'aide du modificateur y on peut figer la position de début de recherche :

let str = '12 34 56'; let reg = /\d+/y; reg.lastIndex = 2; let res1 = reg.exec(str) console.log(res1); let res2 = reg.exec(str) console.log(res2);

Résultat de l'exécution du code :

null [12]

Voir aussi

  • la méthode test,
    qui vérifie une chaîne
  • la méthode match,
    qui recherche des correspondances dans une chaîne
  • la méthode matchAll,
    qui recherche toutes les correspondances dans une chaîne
  • la méthode replace,
    qui effectue une recherche et un remplacement
  • la méthode search,
    qui effectue une recherche
  • la méthode split,
    qui divise une chaîne
nltrcsuzckk