ESC

Testeur d'Expressions Regulieres

/ / g

Motifs Rapides

Statistiques

Total des Correspondances 0
Groupes 0
Temps d'Execution 0ms
Tout le traitement regex se fait dans votre navigateur. Aucune donnee n'est envoyee a un serveur.

0

Total des Correspondances

0

Groupes

0ms

Temps d'Execution

Exemples d'Utilisation

Validation d'Email

Validez et extrayez des adresses email du texte en utilisant des motifs regex.

/[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}/g
Extraction d'URL

Trouvez et extrayez des URLs de n'importe quel contenu texte avec des expressions regulieres.

/https?:\/\/[\w\-]+(\.[\w\-]+)+/g
Analyse de Telephone

Analysez et validez des numeros de telephone dans differents formats internationaux.

/\+?\d{1,4}[-.\s]?\(?\d{1,3}\)?[-.\s]?\d{1,4}/g

Fonctionnalites

Surlignage des Correspondances

Surlignage visuel de toutes les correspondances dans le texte de test

Drapeaux Regex

Support des drapeaux global, insensible a la casse, multiligne et dotAll

Motifs Rapides

Motifs preconstruits pour les cas courants comme email, URL, telephone

Details des Groupes

Visualisez les groupes de capture et groupes nommes pour chaque correspondance

Statistiques

Nombre de correspondances, de groupes et metriques de temps d'execution

Tests en Temps Reel

Les resultats se mettent a jour automatiquement pendant la saisie

Gestion des Erreurs

Messages d'erreur clairs pour les motifs regex invalides

Confidentialite

Tout le traitement dans le navigateur, aucune donnee envoyee

Comment Utiliser ?

1

Entrez le Motif

Tapez votre motif d'expression reguliere dans le champ de saisie.

2

Definissez les Drapeaux

Choisissez les drapeaux appropries : global, insensible a la casse, multiligne, dotAll.

3

Entrez le Texte de Test

Collez ou tapez le texte que vous souhaitez tester avec votre motif regex.

4

Consultez les Resultats

Voyez les correspondances surlignees et les informations detaillees incluant les groupes.

5

Utilisez les Motifs Rapides

Essayez les motifs preconstruits pour des taches courantes comme la validation d'email ou d'URL.

Questions Frequentes

Une expression régulière est une séquence de caractères qui définit un modèle de recherche. Vous pouvez l'utiliser pour trouver du texte correspondant à un motif, valider qu'une entrée est conforme à un format, extraire des parties spécifiques d'une chaîne ou remplacer des portions de texte. Exemples : /\d{4}-\d{2}-\d{2}/ correspond aux dates au format AAAA-MM-JJ ; /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}/ valide les adresses e-mail ; /https?:\/\/[^\s]+/g trouve toutes les URL dans un bloc de texte. La regex est supportée nativement en JavaScript, Python, PHP, Ruby, Java, Go, et pratiquement tous les autres langages de programmation.

g (global) : trouver toutes les correspondances, pas seulement la première. Sans g, la regex ne renvoie que la première correspondance. i (case insensitive) : "hello" correspond à "Hello", "HELLO", "hElLo". m (multiline) : ^ et $ correspondent au début/fin de chaque ligne plutôt qu'à la chaîne entière. Sans m, ^ ne correspond qu'au tout début de l'entrée. s (dotAll / single-line) : le point . correspond normalement à n'importe quel caractère sauf le saut de ligne — avec s, il correspond aussi aux sauts de ligne. Cet outil est basé sur JavaScript, donc les flags disponibles sont ceux supportés par l'implémentation RegExp de JavaScript.

Groupes de capture numérotés : les parenthèses () dans votre motif capturent le texte correspondant que vous pouvez référencer par index : $1, $2, etc. Par exemple, (\d{4})-(\d{2})-(\d{2}) sur "2026-03-15" capture l'année comme groupe 1, le mois comme groupe 2, le jour comme groupe 3. Groupes de capture nommés : (?<name>pattern) attribue une étiquette à un groupe, le rendant accessible via match.groups.name en JavaScript. Exemple : (?<year>\d{4})-(?<month>\d{2})-(?<day>\d{2}). Les groupes nommés sont plus lisibles et ne se cassent pas lorsque vous ajoutez des groupes ailleurs dans le motif. Groupes non capturants (?:pattern) groupent sans capturer, utile quand vous avez besoin d'un groupement pour une alternance (a|b) mais pas de la correspondance elle-même.

Les causes les plus courantes : (1) Flag g manquant — sans lui, seule la première correspondance est trouvée, et le compteur affiche 1 alors que vous en attendiez plus. (2) Caractères spéciaux non échappés — en regex, . correspond à n'importe quel caractère mais \. correspond à un point littéral. De même pour \( \) pour les parenthèses, \[ \] pour les crochets. (3) Ancres incorrectes — ^ et $ sans le flag m correspondent au début/fin de la chaîne entière, pas par ligne. (4) Gourmandise des quantificateurs — .* correspond à autant que possible, consommant souvent ce que vous vouliez capturer. Utilisez .*? pour un comportement non gourmand. (5) Le motif nécessite plus d'entrée que celle fournie — effectuez un test rapide avec un sous-motif plus simple.

Le backtracking catastrophique survient lorsqu'une regex avec des quantificateurs imbriqués provoque une complexité temporelle exponentielle sur certaines entrées. L'exemple classique : (a+)+ appliqué à "aaaaaab" — le moteur essaie toutes les façons possibles de diviser les 'a' parmi les groupes imbriqués avant d'échouer, ce qui fait geler le motif. Vous pouvez déclencher cela dans le testeur pour le voir. Prévention : évitez les quantificateurs imbriqués sur des motifs chevauchants, utilisez des quantificateurs possessifs ou des groupes atomiques là où ils sont supportés, et soyez spécifique sur ce que chaque partie correspond. Si vous voyez le testeur devenir inactif, votre motif a probablement un backtracking catastrophique — rafraîchissez la page et simplifiez le motif.

Les lookaheads et lookbehinds correspondent à une position basée sur ce qui précède ou suit, sans inclure ce contexte dans la correspondance. Lookahead positif (?=...): \w+(?=@) correspond au mot avant un @ sans inclure le @. Lookahead négatif (?!...): \d+(?!\.\d) correspond à un nombre non suivi d'une décimale. Lookbehind positif (?<=...): (?<=\$)\d+ correspond aux chiffres précédés par $. Lookbehind négatif (?<!...): (?<!\d)\d+ correspond aux chiffres non précédés par un chiffre. JavaScript supporte les quatre depuis ES2018, y compris le lookbehind de longueur variable dans les navigateurs modernes.

Oui. Cet outil utilise le moteur RegExp intégré de JavaScript, donc tous les motifs et flags sont spécifiques à JavaScript. Le style JavaScript correspond étroitement aux expressions régulières compatibles Perl (PCRE) mais présente quelques différences : pas de quantificateurs possessifs (syntaxe a++), lookbehind limité (lookbehind de longueur variable ajouté en ES2018), et une gestion différente de l'Unicode. Si vous écrivez des regex Python, notez que Python utilise \A et \Z au lieu de ^ et $ pour les ancres de chaîne, et les chaînes brutes (r"pattern") évitent le double échappement. Pour les regex PHP (PCRE) ou Java, les motifs sont largement compatibles avec JavaScript mais vérifiez la syntaxe des délimiteurs et des flags.

Non. Toutes les correspondances regex s'exécutent dans votre navigateur en utilisant le moteur RegExp natif de JavaScript. Vos motifs et chaînes de test ne quittent jamais votre appareil.

Testeur et Debogueur Regex en Ligne

Les regex, c'est ce truc qu'on re-google a chaque fois. Colle ton motif, colle ton texte, et vois les correspondances surlignees instantanement. Plus besoin de deviner si ton motif est bon - tu le sauras en temps reel.

Correspondance de Motifs avec Expressions Regulieres

Debugger du regex sans retour visuel, c'est penible. Ce testeur te montre les groupes de capture, les positions de match et les stats d'execution pour comprendre exactement pourquoi ton motif ne capture pas ce que tu attends.

Motifs Regex Rapides pour Taches Courantes

Tu te souviens plus du motif pour valider un email ? Ou comment matcher une URL ? Clique sur les motifs rapides et charge des regex courants pour emails, URLs, telephones, IPs et dates en un clic. Ca t'evite un tour sur Stack Overflow.

Sécurité et Confidentialité

La sécurité de vos données est notre priorité

Traitement Local

Tout le traitement se fait dans votre navigateur

Aucun Transfert de Données

Vos données ne sont pas envoyées à nos serveurs

Aucun Stockage de Données

Aucune donnée n'est stockée ou partagée

Chiffrement SSL

Chiffrement SSL pour une connexion sécurisée

Étape Suivante

Aussi sur MoreOnlineTools