Fonctionnement du motif
| Partie | Signification |
|---|---|
^ | Début de la chaîne |
[A-Za-z0-9._%+-]+ | La partie locale : un ou plusieurs lettres, chiffres, points, tirets bas, signes pour cent, plus ou tirets |
@ | Un @ littéral |
[A-Za-z0-9.-]+ | Le nom de domaine, sous-domaines compris |
\. | Un point littéral avant le domaine de premier niveau |
[A-Za-z]{2,} | Le domaine de premier niveau : deux lettres ou plus (com, io, museum) |
$ | Fin de la chaîne |
Exemples de code
JavaScript
const re = /^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$/;
re.test(value); // true or falsePython
import re
bool(re.fullmatch(r'[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}', value))PHP
preg_match('/^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$/', $value) === 1;
Notes et limites
C'est le motif pratique utilisé par la plupart des formulaires d'inscription. Il accepte certaines adresses techniquement étranges (deux points de suite) et rejette quelques adresses valides rares (parties locales entre guillemets, domaines en adresse IP). Le seul vrai test d'une adresse e-mail consiste à envoyer un lien de confirmation. Dans les formulaires HTML, <input type="email"> vous offre une validation par le navigateur sans effort.
Testeur d’expressions régulières
Saisissez un modèle et observez les correspondances s'afficher en temps réel dans votre texte de test.