Testeur Regex
Testez les expressions régulières
Comment utiliser Testeur Regex
Testez les expressions régulières Outil gratuit en ligne, sans inscription, sans publicités intrusives. Utilisez maintenant.
À quoi servent les expressions régulières ?
Les expressions régulières (regex) sont des motifs qui correspondent à du texte. Les maîtriser multiplie la productivité d'un développeur — des tâches qui nécessiteraient 50 lignes de manipulation de chaînes peuvent être résolues avec une seule expression régulière bien construite.
- Validation de saisie : Validez les adresses email, les numéros de téléphone français (avec ou sans indicatif pays), les codes postaux à 5 chiffres, les numéros de SIRET/SIREN et les mots de passe selon des règles de format avant de les traiter ou stocker.
- Extraction de données : Extrayez des motifs spécifiques de texte — toutes les URLs dans un document, toutes les dates dans un fichier de log, tous les montants en euros (format 1 234,56 €) dans un rapport financier.
- Recherche et remplacement avancé : Effectuez des transformations complexes de texte — reformatez les dates du format DD/MM/YYYY au format YYYY-MM-DD, anonymisez des données personnelles, normalisez les espaces blancs.
- Analyse de fichiers de log : Analysez les logs Apache, Nginx ou les logs d'application — extrayez les adresses IP, les codes d'erreur HTTP et les horodatages en utilisant la correspondance de motifs pour la surveillance et les alertes.
- Refactorisation de code : Trouvez tous les appels de fonction correspondant à une signature spécifique, identifiez l'utilisation d'APIs dépréciées dans une base de code, ou trouvez tous les commentaires TODO/FIXME dispersés dans le projet.
Motifs courants en français : Code postal : \d{5}. Numéro de téléphone : (?:(?:\+|00)33|0)\s*[1-9](?:[\s.-]*\d{2}){4}. SIRET : \d{14}. Date FR : \d{2}/\d{2}/\d{4}. Email : [a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}.
Frequently Asked Questions
Que signifient les drapeaux g, i, m et s en regex ?
g (global) : trouve toutes les correspondances, pas seulement la première. i (insensible à la casse) : correspond quelle que soit la capitalisation — utile en français où les noms propres varient. m (multiligne) : ^ et $ correspondent au début/fin de chaque ligne. s (dotAll) : le point (.) correspond aussi aux sauts de ligne. Les drapeaux se combinent : /motif/gim trouve toutes les occurrences sans distinction de casse sur plusieurs lignes.
Quelle est la différence entre correspondance greedy et lazy ?
Les quantificateurs greedy (+, *, {n,}) correspondent au maximum possible. <.+> correspond à toute la chaîne '<b>gras</b>' comme une seule correspondance. Les quantificateurs lazy (+?, *?, {n,}?) correspondent au minimum possible. <.+?> correspond à '<b>' et '</b>' séparément. Utilisez la correspondance lazy pour extraire des balises HTML individuelles.
Qu'est-ce qu'un groupe de capture vs un groupe non-capturant ?
(motif) est un groupe de capture — le texte correspondant est stocké et peut être référencé comme $1, $2, etc. dans les remplacements. (?:motif) est un groupe non-capturant — il groupe le motif pour les quantificateurs ou l'alternance sans stocker la correspondance. Utilisez les groupes non-capturants quand vous n'avez pas besoin de la valeur capturée, pour de meilleures performances.
Qu'est-ce qu'un lookahead et un lookbehind ?
Lookahead (?=motif) affirme que ce qui suit correspond au motif, sans consommer de caractères. Lookbehind (?<=motif) affirme ce qui précède. Versions négatives : (?!motif) et (?<!motif). Exemple : \d+(?=\s€) correspond aux nombres suivis de ' €' sans inclure '€' dans la correspondance.
Pourquoi ma regex fonctionne en JavaScript mais pas en Python ?
Les variantes de regex diffèrent légèrement entre les langages. Python utilise \A et \Z pour le début/fin de chaîne (vs ^ et $). Les chaînes raw Python (r'motif') évitent le double échappement des barres obliques inverses. JavaScript ne supporte pas le lookbehind dans les moteurs plus anciens. PCRE (PHP, Perl) a des fonctionnalités non disponibles dans tous les moteurs. Testez toujours la regex dans le langage cible.
Regex vs méthodes de chaîne vs parser vs IA
La regex est idéale pour la correspondance et l'extraction basées sur des motifs — puissante mais cryptique pour qui n'est pas familiarisé. Les méthodes de chaîne (split, indexOf, slice) sont plus claires pour les opérations simples et doivent être préférées quand la regex est disproportionnée. Les parsers dédiés (HTML, JSON, CSV) sont toujours préférables à la regex pour les formats structurés — n'analysez jamais du HTML avec de la regex. L'analyse assistée par IA gère le langage naturel ambigu où les motifs sont imprévisibles. Utilisez l'outil le plus simple qui résout le problème en toute sécurité.