* Votre contenu n'est pas transféré vers le serveur. Tous les calculs sont effectués directement dans le navigateur
Entrez un motif regex pour commencer

Qu'est-ce qu'un testeur de regex ?

Un testeur de regex (expression régulière) est un outil interactif qui permet de construire et tester des motifs regex sur du texte en temps réel.

À mesure que vous tapez, les correspondances sont surlignées directement dans le texte de test, et une liste détaillée affiche chaque correspondance avec sa position, ses groupes capturés et sa longueur.

Cet outil fonctionne entièrement dans votre navigateur. Aucune donnée n'est jamais envoyée à un serveur.

Fonctionnalités clés

  • Surlignage en temps réel : visualisez les correspondances dans votre texte avec des couleurs alternées pour plus de clarté.
  • Inspection des groupes de capture : affichez les groupes nommés et numérotés pour chaque correspondance.
  • Aperçu de remplacement : testez le chercher-remplacer via regex avec support des jetons $1, $& et '$<name>'.
  • Explication du motif : décomposition jeton par jeton de votre regex, montrant ce que chaque partie signifie (ex. : \d+ → « un ou plusieurs chiffres »).
  • Protection contre le retour en arrière catastrophique : la correspondance s'exécute dans un thread en arrière-plan avec un délai d'attente, pour éviter que les mauvais motifs ne figent la page.
  • Bibliothèque de préréglages : démarrage rapide avec les motifs courants pour email, URL, IP, téléphone, mots de passe et plus.

Cas d'utilisation courants

  • Apprendre les regex : voyez comment chaque jeton contribue à la correspondance et testez votre compréhension sur du texte.
  • Débogage : collez une regex existante et testez-la sur des données réelles pour vérifier qu'elle correspond à vos attentes.
  • Extraction de données : utilisez les groupes de capture pour extraire des parties spécifiques de fichiers journaux, CSV ou texte structuré.
  • Chercher et remplacer : prévisualisez des transformations de texte complexes avant de les appliquer dans votre code.
  • Validation : testez les motifs de validation d'email, téléphone, URL et autres sur des cas limites.

Aide-mémoire

JetonSignificationExemple
Classes de caractères
\dTout chiffre (0-9)123 → matches 1,2,3
\wTout caractère de mot (a-z, A-Z, 0-9, _)a1_ → matches a,1,_
\sTout espace (espace, tabulation, saut de ligne)"a b" → space match
[...]Classe de caractères personnalisée[aeiou] → vowels
[^...]Classe de caractères négative[^0-9] → non-digits
Ancres et limites
^Début de chaîne"^hello" → at start
$Fin de chaîne"end$" → at end
\bLimite de mot"\bword\b" → word
\BNon-limite de mot"\Bing\B" → inside
Quantificateurs
*Zéro ou plusa* → "", a, aa, aaa
+Un ou plusa+ → a, aa, aaa
?Zéro ou una? → "", a
{n}Exactement na{3} → aaa
{n,}Au moins na{2,} → aa, aaa
{n,m}Entre n et ma{2,4} → aa, aaa, aaaa
*?, +?, ??Variante paresseuse (correspondance minimale)"<.*?>" → shortest match
Groupes et lookahead/lookbehind
(...)Groupe capturant(abc)+ → capture abc
(?:...)Groupe non capturant(?:abc)+ → group w/o capture
(?<name>...)Groupe capturant nommé"(?<year>\d{4})"
(?=...)Lookahead positifq(?=u) → q followed by u
(?!...)Lookahead négatifq(?!u) → q not followed by u
(?<=...)Lookbehind positif"(?<=@)\w+"
(?<!...)Lookbehind négatif"(?<!@)\w+"
Échappements
\nSaut de ligne"line\n" → newline
\tTabulation"col\t" → tab
\\Barre oblique inverse littérale"c:\\path"
\.Point littéral"end\." → literal dot
\/Barre oblique littérale"path\/to\/file"

Limites

  • Regex JavaScript uniquement. Cet outil utilise le moteur regex du navigateur. PCRE, Python et d'autres saveurs peuvent se comporter différemment.
  • Pas de lookbehind dans les anciens navigateurs. Les assertions rétrospectives (?<=…) nécessitent ES2018+. Safari n'a ajouté le support qu'en 2023.
  • Limite de 1 000 correspondances. Pour garder l'interface réactive, seules les 1 000 premières correspondances sont affichées.
  • Groupes de capture non surlignés dans le texte. Les groupes sont affichés dans la liste des correspondances, pas dans le texte surligné.