Expression régulière pour tester une adresse email
Bonjour,
je veux utiliser une expression régulière pour tester la validité d'une adresse email (et je connais pas grand chose aux expressions régulières).
Code:
1 2 3 4 5 6 7
| String mail = "nom.prenom@societe.gouvernement";
String text ="([0-9a-zA-Z]([-\\.\\w]*[0-9a-zA-Z])*@([0-9a-zA-Z][-\\w]*[0-9a-zA-Z]\\.)+[a-zA-Z]{2,6})";
bool valid;
if (TRegEx::IsMatch(mail, text))
valid = true;
else
valid = false; |
Je ne comprends pas pourquoi lorsque je teste mon adresse est correcte alors qu'après le dernier point '.' j'ai plus de 6 caractères ? (alors qu'avec le {2,6} je ne devrai pas pouvoir en avoir + de 6).
Si je ne met qu'un caractère après le dernier '.' par contre j'ai bien une adresse invalide. Je dois avoir une erreur dans ma syntaxe mais impossible de la trouver...
merci !!!
Pascale38