Les Expressions Régulières pour Débutants : Guide Pratique
Les expressions régulières sont l'un des outils les plus puissants en programmation. Ce guide explique la syntaxe et montre des exemples pratiques que vous pouvez utiliser immédiatement.
Les expressions régulières (regex) sont des motifs utilisés pour rechercher, faire correspondre et manipuler du texte. Elles sont disponibles dans pratiquement tous les langages de programmation. Une fois les bases apprises, elles deviennent un outil incroyablement puissant.
Syntaxe de base : littéraux et jokers
La regex la plus simple est une correspondance littérale — /bonjour/ correspond au mot "bonjour". Le point (.) est un joker qui correspond à n'importe quel caractère sauf une nouvelle ligne. Pour correspondre à un point littéral, il faut l'échapper : /bonjour\./ correspond à "bonjour." avec le point.
Quantificateurs : Combien de fois ?
Les quantificateurs contrôlent combien de fois un motif peut se répéter. L'astérisque (*) signifie "zéro ou plus", le plus (+) "un ou plus", le point d'interrogation (?) "zéro ou un". Les accolades spécifient des comptes exacts : {3} signifie exactement 3, {2,5} entre 2 et 5.
Classes de caractères et raccourcis
Les crochets définissent des classes de caractères. [aeiou] correspond à toute voyelle ; [a-z] à toute lettre minuscule ; [0-9] à tout chiffre. Les raccourcis rendent les motifs plus lisibles : \d correspond à tout chiffre, \w aux caractères de mot, \s aux espaces.
Ancres, groupes et alternance
Le caret (^) ancre la correspondance au début ; le dollar ($) à la fin. /^\d+$/ ne correspond qu'à une chaîne de chiffres. Les parenthèses créent des groupes. Le pipe | signifie "ou" : /chat|chien/ correspond à "chat" ou "chien".
Comment utiliser le testeur regex
Entrez votre motif dans le champ regex, puis tapez votre chaîne de test en dessous. L'outil met en évidence toutes les correspondances en temps réel et affiche les détails des correspondances, y compris les groupes capturés. Ajoutez des drapeaux : g (global), i (insensible à la casse) et m (multiligne).