Testeur Regex

Testez et déboguez des expressions régulières en temps réel avec mise en surbrillance des correspondances et groupes de capture.

//

Enter a pattern and test string to see results.

Les expressions régulières, communément appelées regex ou regexp, sont des séquences de caractères qui définissent des motifs de recherche pour la correspondance de texte. Elles constituent l'un des outils les plus puissants dans l'arsenal d'un développeur, prises en charge nativement dans pratiquement tous les langages de programmation, notamment JavaScript, Python, Java, C#, Ruby, Go et PHP.

À leur base, les expressions régulières utilisent une combinaison de caractères littéraux et de métacaractères pour décrire des motifs. Les métacaractères comme . (n'importe quel caractère), * (zéro ou plus), + (un ou plus) et ? (zéro ou un) agissent comme des quantificateurs. Les classes de caractères comme [a-z] correspondent à des plages de caractères, tandis que les ancres comme ^ (début de chaîne) et $ (fin de chaîne) contraignent l'endroit où les correspondances peuvent se produire. Le regroupement avec des parenthèses () crée des groupes de capture pour extraire des portions spécifiques du texte correspondant.

Les cas d'utilisation courants des regex couvrent presque tous les domaines du développement logiciel. La validation de formulaires s'appuie sur les regex pour vérifier les adresses e-mail, les numéros de téléphone, les URLs et les codes postaux. Les opérations de recherche et remplacement dans les éditeurs de texte et le code utilisent des motifs regex pour des recherches et remplacements sophistiqués. L'analyse de logs et l'extraction de données utilisent fréquemment les regex pour extraire des données structurées à partir de texte non structuré. Les outils de web scraping utilisent des motifs pour extraire du contenu du HTML.

En JavaScript, les expressions régulières peuvent être créées avec la notation littérale (/motif/drapeaux) ou le constructeur RegExp. Les méthodes clés incluent test() pour la correspondance booléenne, match() pour trouver des correspondances, replace() pour la substitution et split() pour diviser des chaînes. Python propose le module re avec des fonctionnalités similaires via des fonctions comme re.search(), re.findall() et re.sub().

Le débogage des regex peut être difficile car les motifs complexes sont notoirement difficiles à lire. Cet outil de test fournit la mise en surbrillance des correspondances en temps réel, l'extraction des groupes de capture et l'aperçu du remplacement, facilitant la construction et la vérification itératives des motifs. Tout le traitement s'exécute dans votre navigateur sans qu'aucune donnée ne soit envoyée à un serveur.

Questions fréquentes

Les expressions régulières (regex) sont des motifs utilisés pour faire correspondre des combinaisons de caractères dans les chaînes. Ce sont des outils puissants pour la recherche de texte, la validation et la manipulation, pris en charge dans pratiquement tous les langages de programmation.

Les drapeaux modifient la façon dont le moteur regex traite les motifs. Drapeaux courants : g (global – trouver toutes les correspondances), i (insensible à la casse), m (multiligne – ^ et $ correspondent aux limites de ligne), s (DotAll – . correspond aux sauts de ligne), u (support Unicode).

Les groupes de capture sont créés avec des parenthèses () dans un motif. Ils capturent le texte correspondant pour l'extraction ou la rétro-référence. Par exemple, (\d{4})-(\d{2})-(\d{2}) capture l'année, le mois et le jour séparément à partir d'une chaîne de date.