Aperçu
Référence des expressions régulières portables et sûres pour un usage professionnel.
Les modificateurs de drapeaux ((?s), (?m), (?i)) ne sont pas utilisés afin de garantir une compatibilité maximale entre systèmes et outils.
Les modèles fournis sont pratiques, testés et directement exploitables.
Codes de fin de ligne selon le système
| OS |
Code de fin de ligne |
Modèle recommandé |
Remarque |
| Windows |
\r\n |
\r?\n |
Compatible CRLF/LF |
| macOS / Linux |
\n |
\r?\n |
Compatible inter-OS |
Points clés :
- Utilisez
\r?\n pour gérer toutes les plateformes.
- Pour capturer des blocs multi-lignes, utilisez
(?:.|\r|\n) car . ne capture pas les sauts de ligne.
Partie 1 : Syntaxe de base
1-1. Classes de caractères et plages
| Modèle |
Signification |
Exemple |
Résultat |
. |
Un caractère (sauf retour ligne) |
a.c / abc |
abc |
[abc] |
a, b ou c |
bag |
a |
[^0-9] |
Non numérique |
a1 |
a |
[A-Z0-9] |
Majuscule ou chiffre |
X8z |
X, 8 |
1-2. Quantificateurs
| Modèle |
Signification |
Exemple |
Résultat |
* |
0 ou plus |
goooogle |
goooo |
+ |
1 ou plus |
google |
oo |
? |
0 ou 1 |
color colour |
les deux |
{n} |
Exactement n fois |
a{3} / aaa |
aaa |
{n,} |
Au moins n fois |
a{2,} / aaaa |
aaaa |
{n,m} |
De n à m fois |
a{2,4} / aaaaa |
aaaa |
1-3. Ancres
| Modèle |
Signification |
Exemple |
Résultat |
^abc |
Début de ligne |
abc\nzabc |
abc |
abc$ |
Fin de ligne |
zabc\nabc |
abc |
\bword\b |
Mot isolé |
word words |
word |
\Bing |
Sans frontière de mot |
ringing |
dernier ing |
1-4. Abréviations spéciales
| Modèle |
Signification |
Exemple |
Résultat |
\d |
Chiffre |
ver2.10 |
2, 10 |
\D |
Non-chiffre |
a1 |
a |
\w |
Alphanumérique ou _ |
a_b-1 |
a_b |
\W |
Non-alphanumérique |
a# |
# |
\s |
Espace (y compris tab/retour ligne) |
a b |
espace |
\S |
Non-espace |
a b |
a, b |
\t |
Tabulation |
a\tb |
a[TAB]b |
1-5. Caractères spéciaux échappés
| Modèle |
Signification |
Exemple |
Résultat |
\. |
Point littéral |
a.c |
a.c |
\* |
Astérisque littéral |
a*b |
a*b |
\+ |
Signe plus |
a+b |
a+b |
\? |
Point d’interrogation |
what? |
what? |
\( \) |
Parenthèses littérales |
(test) |
(test) |
| |
Barre verticale |
`a |
b` |
\\ |
Antislash |
C:\\path |
\\ |
\^ |
Accent circonflexe |
^abc |
^abc |
\$ |
Signe dollar |
total$ |
$ |
\[ \] |
Crochets littéraux |
[abc] |
[abc] |
\{ \} |
Accolades littérales |
{a,b} |
{a,b} |
Partie 2 : Groupement, alternatives et assertions
| Modèle |
Utilité |
Exemple |
Résultat |
(abc)+ |
Répétition de groupe |
abcabcx |
abcabc |
| `(?:jpg |
png)` |
OU non capturant |
file.png |
| `foo |
bar` |
OU logique |
bar |
\d+(?=€) |
Nombre avant € |
Total 100€ |
100 |
^(?!.*erreur).* |
Ligne sans erreur |
ok\nerror |
ok |
(?<=€)\d+ |
Nombre après € |
€300 |
300 |
(?<!Mr\.)\s[A-Z] |
Majuscule non précédée de Mr. |
Ms. Alice |
A |
Partie 3 : Correspondances multi-lignes
| Usage |
Modèle |
Exemple |
Résultat |
| Bloc HTML |
`<div>(?:. |
\r |
\n)*?</div>` |
| Bloc de log |
`^[\d{4}-\d{2}-\d{2} [\d:]+](?:. |
\r |
\n)*?(?=^[\d{4}-\d{2}-\d{2} |
| Bloc Markdown |
« « `(?:. |
\r |
\n)*?« ` « |
| Commentaire /…/ |
`/*(?:. |
\r |
\n)*?*/` |
Partie 4 : Modèles fréquents (validation et extraction)
| Objectif |
Modèle |
Exemple |
Résultat |
| Chiffres uniquement |
^\d+$ |
123 |
123 |
| Alphanumérique |
^[A-Za-z0-9]+$ |
user01 |
user01 |
| E-mail simple |
^[\w.-]+@[\w.-]+\.[A-Za-z]{2,}$ |
a@b.com |
a@b.com |
| URL |
https?://[\w.-]+\.[A-Za-z]{2,}(/[\w./?=&%-]*)? |
https://ex.com/a |
https://ex.com/a |
| Date ISO |
\d{4}-\d{2}-\d{2} |
2025-10-30 |
2025-10-30 |
| Téléphone international |
\+\d{1,3}[\s-]?\d{1,14} |
+81 90 1234 5678 |
complet |
| Mot de passe fort |
^(?=.*[a-z])(?=.*[A-Z])(?=.*\d).{8,}$ |
Abcd1234 |
valide |
| Commentaire HTML |
`<!–(?:. |
\r |
\n)*?–>` |
Ligne sans error |
^(?!.*error).* |
ok\nerror |
ok |
Partie 5 : Exemples de remplacement
| Tâche |
Modèle |
Remplacement |
Entrée |
Sortie |
| Inverser deux mots |
(\w+)\s+(\w+) |
${2} ${1} |
John Doe |
Doe John |
| Changer séparateur |
; |
, |
a;b;c |
a,b,c |
| Normaliser espaces |
\s{2,} |
|
a b |
a b |
| Supprimer balises HTML |
<[^>]+> |
« |
<p>a</p> |
a |
| Trim (espaces début/fin) |
`^\s+ |
\s+$` |
« |
a |
| Remplacer retour par espace |
\r?\n |
|
a\nb |
a b |
| Supprimer commentaire // |
//.*$ |
« |
x=1;//note |
x=1; |
| Uniformiser date |
(\d{4})/(\d{2})/(\d{2}) |
${1}-${2}-${3} |
2025/10/30 |
2025-10-30 |
| Supprimer doublons de ligne |
^(.*)(\r?\n\1)+$ |
${1} |
lignes identiques |
une seule |
Conclusion
Les expressions régulières sont essentielles pour le traitement de texte, l’analyse de logs et l’automatisation.
En respectant les modèles indépendants des drapeaux, vous garantissez une compatibilité entre langages et systèmes et réduisez les risques d’erreur lors de vos traitements.