par
zigz4g » 09 févr. 2006, 18:21
Salut tout le monde.
Je suis sur la gestion du module pecl de filter. Je viens de voir la regexp qui traite qu'un email est valide dans la forme mais pas par rapport a son nom de domaine. La dessus il n'y a pas trop de probleme mais je pense qu'il y a une petite erreur.
Voici la regexp qui traite l'email :
Code : Tout sélectionner
/^((\"[^\"\f\n\r\t\v\b]+\")|([\w\!\#\$\%\&\'\*\+\-\~\/\^\`\|\{\}]+(\.[\w\!\#\$\%\&\'\*\+\-\~\/\^\`\|\{\}]+)*))@((\[(((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9])))\])|(((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9])))|((([A-Za-z0-9\-])+\.)+[A-Za-z\-]+))$/
Cette regexp vient de cette page :
http://cvs.php.net/viewcvs.cgi/pear/HTM ... up&rev=1.4
Quand on regarde cette partie precise de la regexp :
Code : Tout sélectionner
([\w\!\#\$\%\&\'\*\+\-\~\/\^\`\|\{\}]+(\.[\w\!\#\$\%\&\'\*\+\-\~\/\^\`\|\{\}]+)*)
Je me pose la question s'il ne manque pas le signe '\=' et '\?' qui selon la rfc 2822 est correct (chapitre : 3.2.4. Atom - atext). A moins que je ne sache plus a quoi correspond le '\w' qui pour moi equivaux a ceci :
J'aimerais avoir votre avis merci.
Salut tout le monde.
Je suis sur la gestion du module pecl de filter. Je viens de voir la regexp qui traite qu'un email est valide dans la forme mais pas par rapport a son nom de domaine. La dessus il n'y a pas trop de probleme mais je pense qu'il y a une petite erreur.
Voici la regexp qui traite l'email :
[code]
/^((\"[^\"\f\n\r\t\v\b]+\")|([\w\!\#\$\%\&\'\*\+\-\~\/\^\`\|\{\}]+(\.[\w\!\#\$\%\&\'\*\+\-\~\/\^\`\|\{\}]+)*))@((\[(((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9])))\])|(((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9])))|((([A-Za-z0-9\-])+\.)+[A-Za-z\-]+))$/
[/code]
Cette regexp vient de cette page :
[url]http://cvs.php.net/viewcvs.cgi/pear/HTML_QuickForm/QuickForm/Rule/Email.php?view=markup&rev=1.4[/url]
Quand on regarde cette partie precise de la regexp :
[code]
([\w\!\#\$\%\&\'\*\+\-\~\/\^\`\|\{\}]+(\.[\w\!\#\$\%\&\'\*\+\-\~\/\^\`\|\{\}]+)*)
[/code]
Je me pose la question s'il ne manque pas le signe '\=' et '\?' qui selon la rfc 2822 est correct (chapitre : 3.2.4. Atom - atext). A moins que je ne sache plus a quoi correspond le '\w' qui pour moi equivaux a ceci :
[code][A-Za-z0-9_][/code]
J'aimerais avoir votre avis merci.