Aide-mémoire Regex : les patterns indispensables pour tout développeur
Les expressions réguliÚres semblent relever de la magie noire jusqu'à ce que vous appreniez les patterns. Une fois maßtrisées, elles deviennent indispensables pour la recherche de texte, la validation, l'extraction de données et la manipulation de chaßnes.
Prenez un pattern, collez-le dans notre Testeur de Regex pour expérimenter, et adaptez-le à vos besoins.
Syntaxe de base des Regex
Classes de caractĂšres
| Pattern | Correspond Ă | Exemple |
|---|---|---|
. | Tout caractĂšre sauf le retour Ă la ligne | a.c correspond Ă "abc", "a1c" |
\d | Tout chiffre (0-9) | \d{3} correspond Ă "123" |
\w | CaractĂšre de mot (lettre, chiffre, underscore) | \w+ correspond Ă "hello_1" |
\s | Espace blanc | \s+ correspond aux espaces |
[abc] | L'un des caractĂšres a, b ou c | [aeiou] correspond aux voyelles |
[^abc] | Tout caractĂšre sauf a, b, c | [^0-9] correspond aux non-chiffres |
[a-z] | Tout caractĂšre dans la plage | [A-Za-z] correspond aux lettres |
Quantificateurs
| Pattern | Signification |
|---|---|
* | Zéro ou plus |
+ | Un ou plus |
? | Zéro ou un |
{n} | Exactement n fois |
{n,m} | Entre n et m fois |
Ancres et groupes
| Pattern | Signification |
|---|---|
^ | Début de chaßne |
$ | Fin de chaĂźne |
\b | Limite de mot |
(abc) | Groupe de capture |
(?:abc) | Groupe non capturant |
a|b | Alternance (ou) |
(?=abc) | Assertion avant positive |
Patterns pratiques
Validation d'e-mail
^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$
Correspondance d'URL
https?:\/\/[\w.-]+(?:\.[a-zA-Z]{2,})(?:\/[\w./?%&=-]*)?
Robustesse du mot de passe
Au moins 8 caractÚres, une majuscule, une minuscule, un chiffre, un caractÚre spécial :
^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[!@#$%^&*])[A-Za-z\d!@#$%^&*]{8,}$
Pour générer des mots de passe robustes, utilisez notre Générateur de mots de passe.
Codes couleur hexadécimaux
^#?([0-9A-Fa-f]{3}|[0-9A-Fa-f]{6})$
Convertissez entre les formats de couleur avec notre Convertisseur de couleurs.
Validation UUID
^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$
Générez des UUID valides avec notre Générateur d'UUID.
Conseils de performance Regex
- Soyez spĂ©cifique â
[a-zA-Z]est plus rapide que. - Ăvitez le backtracking catastrophique â Les quantificateurs imbriquĂ©s comme
(a+)+causent un temps exponentiel - Utilisez des groupes non capturants quand vous n'avez pas besoin de la valeur
- Ancrez vos patterns â
^pattern$est plus rapide qu'une recherche non ancrĂ©e - Testez avec des cas limites â Utilisez notre Testeur de Regex avant le dĂ©ploiement
Foire aux questions
Quelle est la différence entre * et + ?
* correspond à zéro ou plusieurs occurrences, + en exige au moins une. Ainsi ab*c correspond à "ac" mais ab+c non.
Comment rendre une regex insensible Ă la casse ?
Utilisez le drapeau i : /pattern/i en JavaScript, re.IGNORECASE en Python.
Ressources associées
- Regex pour la validation d'e-mail â Des patterns qui fonctionnent en production
- Outil Testeur de Regex â Testez et dĂ©boguez vos patterns en temps rĂ©el
- GĂ©nĂ©rateur de mots de passe â GĂ©nĂ©rez des mots de passe correspondant Ă des rĂšgles regex
- GĂ©nĂ©rateur d'UUID â GĂ©nĂ©rez des UUID valides