Regex
Testeur de regex
Testez des expressions régulières sur votre propre texte, en direct.
À propos des expressions régulières
Une expression régulière (regex) est un motif qui décrit un ensemble de chaînes de caractères — utilisé pour rechercher, valider ou extraire du texte. Ce testeur exécute le moteur regex natif de JavaScript entièrement dans votre navigateur, afin que vous puissiez expérimenter un motif sur du texte réel et voir exactement ce qu'il capture.
Les quantificateurs existent en deux variantes faciles à confondre : les gourmands (+, *, {2,5}) consomment autant de texte que possible avant de revenir en arrière (backtracking) pour permettre au reste du motif de correspondre, tandis que leurs équivalents paresseux (+?, *?, {2,5}?) consomment au contraire aussi peu que possible. Face à <a><b> avec <.+>, un motif gourmand capture toute la chaîne, tandis que <.+?> s'arrête au premier >. Les groupes suivent une bifurcation similaire : (...) capture le texte correspondant pour une référence ultérieure, tandis que (?:...) groupe de la même façon sans capturer — utile quand vous avez besoin de la priorité du groupement mais pas de sa sortie.
Où vous le rencontrerez
- Valider des formats de saisie comme des adresses e-mail, des numéros de téléphone ou des codes postaux
- Extraire des valeurs structurées de lignes de log ou de texte non structuré
- Écrire un motif de recherche-remplacement pour un refactoring sur de nombreux fichiers
- Déboguer pourquoi un motif capture plus, ou moins, que prévu
Questions fréquentes
Pourquoi mon motif ne capture-t-il qu'une seule fois ?
Sans l'indicateur g (global), les méthodes regex de JavaScript s'arrêtent après la première correspondance — c'est le comportement réel que votre code verrait aussi, pas une limitation de cet outil. Activez g pour trouver toutes les correspondances.
Ce que je tape ici est-il envoyé à un serveur ?
Non. La correspondance s'exécute entièrement dans votre navigateur grâce au moteur regex intégré de JavaScript — rien n'est transmis nulle part, ce qui évite aussi d'exposer un serveur à un motif délibérément lent provoquant un « backtracking catastrophique ».
Pourquoi la page se bloque-t-elle parfois sur un motif ?
Certains motifs, comme des quantificateurs imbriqués tels que (a+)+, peuvent provoquer un backtracking catastrophique, où le temps de correspondance croît exponentiellement avec la longueur de l'entrée. Si un motif se bloque, c'est le motif lui-même qui est en cause, pas cet outil — essayez un texte de test plus court ou réécrivez le motif pour éviter les répétitions imbriquées.
Quelle est la différence entre quantificateurs gourmands et paresseux ?
Un quantificateur gourmand (+, *, {2,5}) fait correspondre d'abord autant de texte que possible, et ne revient en arrière que si cela fait échouer le reste du motif. Son équivalent paresseux, écrit avec un ? final (+?, *?), fait correspondre au contraire aussi peu que possible, et ne s'étend que si nécessaire. Face à <a><b>, le motif gourmand <.+> capture toute la chaîne, tandis que le paresseux <.+?> s'arrête au premier >. Recourez aux quantificateurs paresseux chaque fois que « la correspondance la plus courte possible » est réellement ce que vous voulez.