Les expressions régulières par l'exemple
Une expression régulière décrit une forme de texte. Plutôt que de comparer caractère par caractère, vous écrivez un motif et le moteur vous dit si une chaîne correspond. C'est l'outil le plus rapide pour valider une saisie, extraire un fragment ou rechercher-remplacer dans un éditeur.
Les briques de base
Quelques symboles couvrent l'essentiel des besoins quotidiens :
\dun chiffre,\wune lettre, un chiffre ou un underscore,\sun espace+une fois ou plus,*zéro fois ou plus,?optionnel^début de chaîne,$fin de chaîne[a-z]une plage,(…)un groupe que l'on peut réutiliser
💡 Anecdote - Le développeur Jamie Zawinski résume le piège : « Certains, face à un problème, se disent : je vais utiliser des regex. Ils ont maintenant deux problèmes. »
Trois cas réels
Un code postal français : ^\d{5}$ - exactement cinq chiffres, rien avant ni après. Une date ISO : ^\d{4}-\d{2}-\d{2}$. Un e-mail, version pragmatique : ^[^@\s]+@[^@\s]+\.[a-z]{2,}$ - du texte, une arobase, un domaine, un point, une extension. Inutile de viser la regex parfaite pour l'e-mail : la seule preuve fiable reste l'envoi d'un message de confirmation.
Tester avant de coller en production
Une regex se lit mal et se déboge à l'œil encore moins bien. Construisez-la sur des exemples concrets, ajoutez les cas limites un par un, et vérifiez ce qui correspond et ce qui ne devrait pas. Notre testeur de regex surligne les correspondances en direct, entièrement dans votre navigateur - vos données de test ne partent jamais sur un serveur
🤓 Le saviez-vous ? Le nom de la commande
grepvient de l'éditeur ed : la commandeg/re/p(global / regular expression / print) affichait les lignes correspondant à un motif. « To grep » est depuis devenu un verbe chez les développeurs.