expression régulière

Syntaxe de la Grammaire ECMAScript


La syntaxe REGEX implémentée dans ASTER est la version ECMAScript (JavaScript).

À propos des expressions régulières
REGEX

ECMAScript est une spécification standard de JavaScript définie par une organisation appelée ECMA. Elle fournit un mécanisme de standardisation de la spécification du langage et de maintien de la compatibilité pour fonctionner couramment sur différents navigateurs.

Il existe plusieurs variantes de grammaires d’expressions régulières, et de nos jours, il existe de nombreux textes sur le web qui enseignent la version ECMAScript de la grammaire. Par conséquent, les opportunités d’apprendre avec les grammaires d’expressions régulières ECMAScript se multiplient.

Elle est basée sur une notation conçue par le mathématicien américain Stephen Cole Kleene en 1943, et a été plus tard implémentée par Kenneth Lane Thompson dans Ken’s CTSS QED, un éditeur pour les ordinateurs centraux, qui a intégré la première “expression régulière” de l’histoire de l’informatique.

Les expressions régulières, qui ont évolué sur UNIX, sont devenues une technologie essentielle pour la gestion de grandes quantités de texte sur tous les ordinateurs modernes.


regex101.com

Parce que les expressions régulières nécessitent une certaine quantité d’essais et d’erreurs, nous recommandons d’utiliser un outil utile appelé regex101.com pour vérifier leur fonctionnement dans votre navigateur.

Il offre une fonctionnalité SAVE & SHARE, vous permettant de partager les résultats avec une URL courte.

De plus, la section Match Information répertorie les résultats de la recherche et affiche visuellement les sous-correspondances obtenues lors de l’utilisation des groupes de capture, ce qui rend le débogage et les tests plus efficaces.




Fonctions d’expressions régulières disponibles dans ASTER

  • REGEX Search :: Partial Match
  • REGEX Search :: Exact Match
  • REGEX Replace

Vous pouvez utiliser les expressions régulières pour la recherche et le remplacement de texte. La syntaxe de base est la suivante.

Pattern French English
x|y L’opérateur d’alternance The alternation operator
[xyz] Classe de caractères Character class
[^xyz] Classe de caractères négative Negated character class
\1 Référence arrière Backreference
(x) Groupe de capture Capturing Groups
{n} Quantificateur fixe Fixed quantifier
{n,m} Quantificateur gourmand Greedy quantifier
(?:x) Groupe non capturant Non-Capturing Groups
(?=x) Anticipation positive Positive lookahead
(?!x) Anticipation négative Negative lookahead
Caractères de contrôle

En raison des spécifications de CF25, la transmission de chaînes de caractères de contrôle reste limitée. Certains caractères de contrôle dans le processus de remplacement ne sont pas pris en charge.

Recherche de correspondance de modèle

Comme il s’agit d’une recherche de correspondance de modèle, le traitement est plus lourd qu’une recherche de chaîne normale.

Spécifications

Le C++20 STL ne prend pas en charge toutes les fonctionnalités des expressions régulières ECMAScript, et les LookBehinds ne peuvent pas être utilisés. Les groupes de capture nommés ne sont également pas pris en charge.

(?<=T.+e)S.+t

Bien que la syntaxe ci-dessus soit correcte, elle entraînera une “Erreur de Syntaxe” sur ASTER car les Lookbehinds (REGEX) ne peuvent pas être utilisés.

Cette expression régulière correspond à toute chaîne qui commence par S et se termine par t, suivant une chaîne qui commence par T et se termine par e.

Exemple de fonctionnement confirmé avec regex101


Lien correspondant