Dans cet article
Qu'est-ce qu'une expression régulière ?
Une expression régulière (regex ou regexp) est une séquence de caractères qui définit un motif de recherche. Elles sont utilisées pour rechercher, faire correspondre, extraire, remplacer et valider du texte. Les expressions régulières sont nativement supportées dans presque tous les langages de programmation et constituent des outils essentiels dans la boîte à outils de tout développeur.
Les regex peuvent aller de motifs simples comme \d+ (un ou plusieurs chiffres) à des motifs complexes multi-lignes avec des assertions avant, des références arrière et des groupes nommés. Bien que puissantes, les regex complexes peuvent être difficiles à lire et à maintenir — le testeur regex vous aide à construire et vérifier des motifs de manière interactive.
Comment fonctionne notre testeur regex
Le testeur regex fournit une correspondance en temps réel avec mise en évidence visuelle au fur et à mesure que vous tapez.
- Correspondance en direct — met en évidence toutes les correspondances dans votre chaîne de test au fur et à mesure que vous tapez le motif
- Prise en charge des drapeaux — activez ou désactivez les drapeaux global, insensible à la casse, multiligne et dotAll
- Affichage des groupes capturés — affiche les groupes capturés et les captures nommées pour les motifs complexes
Essayez gratuitement — sans inscription
Tester une expression régulière →Quand utiliser le testeur regex
Le testeur regex est utile chaque fois que vous devez développer ou déboguer un motif avant de l'intégrer dans votre code.
- Validation de formulaires — développez et testez des motifs pour la validation d'e-mails, de numéros de téléphone, de codes postaux ou de champs personnalisés
- Analyse de journaux — créez des regex pour extraire des champs de lignes de journal avant de les traiter avec grep ou awk
- Extraction de données — testez des motifs pour le scraping ou l'analyse de données structurées à partir de texte ou de HTML
Foire aux questions
Quelle est la différence entre les quantificateurs gourmands et paresseux ?
Les quantificateurs gourmands (*, +, ?) correspondent au maximum possible. Les quantificateurs paresseux (*?, +?, ??) correspondent au minimum possible. Par exemple, sur la chaîne <a>texte</a>, le motif <.*> correspond à toute la chaîne (gourmand) tandis que <.*?> ne correspond qu'à <a> (paresseux). Les quantificateurs paresseux sont essentiels pour analyser du HTML ou des structures imbriquées.
Comment faire correspondre un point littéral ou un autre caractère spécial en regex ?
Échappez le caractère avec une barre oblique inverse : \. correspond à un point littéral, \* correspond à un astérisque littéral. Les caractères spéciaux nécessitant un échappement sont : . * + ? ^ $ { } [ ] | ( ) \. Si vous avez besoin de les faire correspondre littéralement, préfixez-les toujours avec \.
Pourquoi mon regex fonctionne-t-il différemment en JavaScript et en Python ?
Les différents langages implémentent des variantes de regex légèrement différentes. Parmi les principales différences : Python utilise (?P<nom>) pour les groupes nommés tandis que JavaScript utilise (?<nom>) ; la prise en charge des assertions arrière varie ; certaines fonctionnalités comme \K (keep) existent en PCRE mais pas en JavaScript. Testez toujours votre regex dans le contexte du langage cible.