Testeur de Regex - Tester une Expression Régulière en Direct
Testeur d’expressions régulières
Options
Utilisez $1, $2 pour les groupes et $& pour la correspondance entière.
| # | Position | Correspondance | Groupes |
|---|
Ce testeur utilise le moteur JavaScript de votre navigateur : le dialecte est donc ECMAScript. Les motifs écrits pour PCRE, Python ou .NET peuvent se comporter différemment, en particulier pour le lookbehind, les groupes atomiques, les quantificateurs possessifs et les échappements de propriétés unicode.
Ce que fait ce testeur de regex
Une expression régulière est facile à écrire et difficile à garantir. Cette page montre ce que votre motif a réellement capturé dans votre texte, quels groupes il a saisis et ce que donnerait le remplacement, avant que ce motif n’approche des données de production.
Comment l’utiliser
- 1 Saisissez le motif entre les barres obliques et cochez les options nécessaires.
- 2 Collez en dessous du texte réel, le plus désordonné possible, puis cliquez sur Exécuter.
- 3 Lisez la vue surlignée pour un contrôle rapide, le tableau pour les groupes capturés, et ajoutez un remplacement pour prévisualiser la réécriture.
Pourquoi le motif s’exécute dans un worker séparé
Certains motifs explosent. Un quantificateur imbriqué comme (a+)+$ peut obliger le moteur à essayer un nombre astronomique de chemins sur une chaîne presque conforme, et une expression régulière déjà lancée ne peut pas être interrompue depuis la page qui l’a démarrée. L’exécuter dans un worker permet de l’arrêter au bout de deux secondes : un mauvais motif vous coûte un message, pas un onglet figé.
Aide-mémoire
| \d | un chiffre |
| \w | une lettre, un chiffre ou un tiret bas |
| \s | tout espace blanc |
| . | tout caractère sauf un saut de ligne |
| ^ $ | début et fin du texte |
| * + ? | zéro ou plus, un ou plus, zéro ou un |
| {2,5} | entre deux et cinq fois |
| (...) | un groupe capturant, réutilisable via $1 |
| (?<ad>…) | groupe nommé, plus lisible dans les longs motifs |
| [a-z] | un caractère quelconque de l’ensemble |
| a|b | soit la partie gauche, soit la partie droite |
| \b | une limite de mot, ne consomme aucun caractère |
Le dialecte compte
Un motif qui marche ici peut échouer dans votre code serveur, et inversement. JavaScript, PCRE, Python et .NET diffèrent par ce qu’ils prennent en charge et parfois par le sens d’une même syntaxe. Testez dans le dialecte que vous déploierez, et considérez cette page comme l’endroit adapté à tout ce qui tournera dans un navigateur.
C’est dans les groupes que se cachent la plupart des erreurs
La correspondance est souvent juste alors que les captures sont fausses : un groupe est facultatif et revient indéfini, ou deux groupes s’échangent parce qu’une parenthèse a bougé. Le tableau montre chaque groupe de chaque correspondance côte à côte, c’est le moyen le plus rapide de voir que $2 n’est pas ce que vous croyiez.
Rien de ce que vous tapez n’est envoyé
Le texte de test est rarement inventé. On colle des lignes de journal, des fiches clients et des références de paiement pour voir si le motif les attrape. Le motif comme le texte restent dans la page : tester sur de vraies données ne revient pas à les confier à quelqu’un.