Aller au contenu
1123.net
FR
1123.net

Rechercher un outil

Filtrer le répertoire des outils. Tout s’exécute dans votre navigateur.

Saisissez un mot-clé pour filtrer les outils. Appuyez sur Entrée pour ouvrir le premier résultat.

Testeur de regex

Ce testeur exécute des expressions régulières JavaScript sur votre texte et affiche chaque correspondance avec sa position et ses groupes de capture. L’évaluation se fait dans le navigateur : rien n’est envoyé ni enregistré.

Vos données sont traitées localement dans votre navigateur et ne sont pas envoyées à notre serveur.

Flags
Correspondances (2)
Contact ada@example.com or grace@example.org for details.
  1. #1 ada@example.com à 8
  2. #2 grace@example.org à 27

Comment utiliser cet outil

  1. 1 Saisissez une expression régulière et cochez les flags nécessaires.
  2. 2 Collez le texte à parcourir ; les correspondances sont surlignées et listées au fil de la saisie.
  3. 3 Partez d’un des exemples proposés pour obtenir un motif qui fonctionne.
  4. 4 Copiez les valeurs trouvées ou videz le formulaire.

Formule et logique de calcul

Recherche des correspondances

new RegExp(pattern, flags).exec(text)

Le motif est compilé par le moteur JavaScript du navigateur. Sans le flag g, seule la première correspondance est renvoyée ; avec g, le testeur continue jusqu’à la fin du texte.

Flags

g global · i ignore case · m multiline · s dotAll · u unicode · y sticky

Les flags modifient la façon dont le moteur interprète le motif. Le testeur les transmet au constructeur RegExp et affiche les erreurs de syntaxe avec le message du moteur.

Exemple de calcul

Trouver des adresses e-mail

Un message adressé au support contient deux adresses e-mail.

  1. Motif : \b[\w.+-]+@[\w-]+\.[\w.]+\b
  2. Flag : g
  3. Résultat : ada@example.com et grace@example.org

Chaque correspondance est listée avec son index de départ ; les groupes de capture apparaissent dès que le motif contient des parenthèses.

Capturer une date

Extraire l’année, le mois et le jour de dates au format ISO.

  1. Motif : (\d{4})-(\d{2})-(\d{2})
  2. Flag : g
  3. Groupes : année, mois et jour pour chaque correspondance

Les parties entre parenthèses sont renvoyées comme groupes de capture dans l’ordre où elles apparaissent dans le motif.

Cas limites et précision

Backtracking catastrophique

Les quantificateurs imbriqués comme (a+)+ peuvent obliger le moteur à un travail exponentiel sur certaines entrées. Si la page se bloque, simplifiez le motif ; le testeur ne peut pas interrompre une expression en cours d’exécution.

Correspondances de longueur nulle

Des motifs comme ^ ou \b peuvent correspondre à une chaîne vide. Après une correspondance vide, le testeur avance la position de recherche pour éviter une boucle sans fin.

Syntaxe JavaScript uniquement

Le testeur utilise la syntaxe RegExp de JavaScript, et non celle de PCRE ou de Python. Lookbehind et groupes nommés ne fonctionnent que dans les moteurs qui les implémentent.

Questions fréquentes

Pourquoi une seule correspondance s’affiche-t-elle ? +

Le flag g (global) est indispensable pour trouver toutes les correspondances. Sans lui, le testeur s’arrête au premier résultat.

Que sont les groupes de capture ? +

Chaque partie du motif entre parenthèses capture du texte. Les groupes sont numérotés de gauche à droite et affichés à côté de la correspondance ; un groupe facultatif sans correspondance apparaît sous la forme ∅.

Le motif et le texte sont-ils envoyés sur un serveur ? +

Non. La recherche s’exécute dans votre navigateur avec le moteur RegExp natif ; rien n’est transmis à un serveur.

Pourquoi mon expression régulière est-elle lente ? +

Les quantificateurs imbriqués et les alternatives ambiguës provoquent un backtracking catastrophique. Rendez le motif plus précis ou ancrez-le pour réduire l’espace de recherche.

Les groupes nommés sont-ils pris en charge ? +

Le moteur accepte la syntaxe JavaScript moderne : les groupes nommés fonctionnent lorsque le navigateur les prend en charge. La liste des résultats affiche les groupes numérotés.