SuperDevTools

Tester une regex en ligne

Options

Syntaxe JavaScript, exécutée par le moteur de votre navigateur : un même motif peut se comporter un peu autrement en Python, PHP ou Java.

Correspondances surlignées



  
Affichage

Explication du motif, jeton par jeton

JetonSignification
Motifs courants

Des points de départ simples, pas des validations parfaites : vérifiez-les sur vos propres données.

Code prêt à copier



  

Tout est calculé dans votre navigateur : ni le motif ni le texte ne sont envoyés. Le dernier état est gardé sur cet appareil.

Un testeur d'expressions régulières qui explique ce qu'il trouve

Une expression régulière, ou regex, décrit une forme de texte : « cinq chiffres », « un mot répété », « une date au format AAAA-MM-JJ ». On s'en sert pour chercher, valider un champ de formulaire ou remplacer en masse dans un éditeur de code.

Tapez le motif dans « Motif », cochez les « Options », puis collez votre « Texte de test ». Les « Correspondances surlignées » s'affichent pendant la frappe, en deux couleurs alternées et soulignées. Le tableau donne pour chacune la position (comptée à partir de 0), la valeur et les groupes, numérotés et nommés.

Le motif suit la syntaxe JavaScript et c'est le moteur de votre navigateur qui l'exécute. Rien n'est envoyé : le calcul se fait sur votre appareil.

Mode d'emploi

  1. Écrivez le motif, par exemple \d+, et cochez « g : toutes les correspondances ».
  2. Avec le texte a1b22c333, l'outil annonce « 3 correspondances » : 1 en position 1, 22 en position 3 et 333 en position 6.
  3. Passez à « Remplacer » pour un remplacement, ou à « Fractionner » pour couper le texte à chaque correspondance.
  4. Lisez l'« Explication du motif, jeton par jeton », puis copiez le code ou le lien.

Aide-mémoire de la syntaxe

ÉcritureSignification
\d \w \sun chiffre, une lettre sans accent ou un chiffre ou _, un espace blanc
[a-z], [^0-9]un caractère de la liste, un caractère hors de la liste
* + ? {2,4}0 fois ou plus, 1 fois ou plus, facultatif, de 2 à 4 fois
^ $ \bdébut, fin, limite de mot
( ) (?: ) (?<nom> )groupe capturant, non capturant, nommé
(?= ) (?! ) (?<= ) (?<! )assertions avant et arrière, positives ou négatives
g i m s u y doptions : global, casse ignorée, multiligne, point universel, Unicode, collant, positions des groupes

Exemples exacts

Le motif (?<annee>\d{4})-(?<mois>\d\d) appliqué à 2026-03 donne le groupe 1 « annee » = 2026 et le groupe 2 « mois » = 03. Dans « Remplacer par », $<mois>/$<annee> produit 03/2026 ; $1 reprend le groupe 1 et $& la correspondance entière.

L'assertion arrière (?<=€)\d+ trouve 15 dans « €15 et 20 € ». Avec l'option u, \p{L}+ attrape « été » et « Noël » en entier, alors que \w+ s'arrête aux lettres accentuées. En mode « Fractionner », [,;]\s* coupe « pomme, poire;kiwi » en trois morceaux.

L'explication détaille aussi ^(?:\+33|0)[1-9](?:\d{2}){4}$ : début, +33 ou 0, un chiffre de 1 à 9, quatre paires de chiffres, fin.

Pièges fréquents

  • Gourmand ou paresseux. Sur <b>gras</b>, <.+> prend tout d'un bloc, alors que <.+?> trouve <b> puis </b>.
  • Échappement. Le point signifie « n'importe quel caractère » : pour un vrai point, écrivez \.. Dans une chaîne de code, la barre oblique inverse se double souvent : le code généré s'en charge.
  • Retour arrière catastrophique. (a+)+$ sur trente « a » suivis d'un « b » essaie des milliards de découpages. L'outil l'arrête au bout d'une seconde avec le message « Motif trop coûteux » : la page reste utilisable.

Les moteurs de regex se ressemblent, mais certaines écritures (groupes nommés, assertions arrière, \p{…}) changent selon le langage : testez aussi dans votre environnement final.

Conseils

Essayez votre motif sur des exemples variés, y compris ceux qui ne doivent pas correspondre : une date 2026-02-30, un code postal à quatre chiffres, une adresse sans point. Ne cherchez pas à valider parfaitement un e-mail par regex : un motif simple suffit pour repérer les fautes de frappe, et seul un message de confirmation prouve qu'une adresse existe.

Questions fréquentes

Pourquoi mon motif marche ici et pas dans mon programme ?

En Python, PHP ou Java, quelques détails diffèrent : utilisez « Code prêt à copier », qui adapte l'écriture des groupes nommés et l'échappement, et lisez les remarques ajoutées en commentaire.

À quoi sert l'option g ?

Sans elle, la recherche et le remplacement s'arrêtent à la première correspondance.

Comment partager un motif avec un collègue ?

« Copier le lien » place le motif, les options et le texte de test (jusqu'à 1 000 caractères) après le signe # de l'adresse. Elle n'est jamais transmise au serveur.

Que signifie « (non utilisé) » dans un groupe ?

Le groupe n'a pas participé à cette correspondance, par exemple la branche non choisie d'une alternative (a)|(b).