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 : Sélectionner tout - Visualiser dans une fenêtre à part
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