Bonjour,

J'utilise la fonction Javascript suivante pour vérifier la validité d'un champ e-mail dans un formulaire :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
function verifMail(email)
{  
  var re = new RegExp("([a-z0-9]+([-_]?[a-z0-9]+)*.)*[a-z0-9]+([-_]?[a-z0-9]+)*@([a-z0-9]+([-_]?[a-z0-9]+)*[.])+[a-z]{2,4}","gi")
  return (email.match(re) == email);
}
La fonction retourne bien "true" (mail valide) lorsqu'on lui passe une adresse e-mail valide sous IE6/IE7, Firefox et Opera.
Par contre, sous Chrome et Safari, elle renvoie systématiquement "false" pour la même adresse e-mail.

L'expression régulière ne doit donc pas être correctement reconnue par ces deux navigateurs, mais j'avoue ne pas bien comprendre pourquoi.
Y'a-t-il des particularités pour les expressions régulières avec ces deux navigateurs ?

Merci pour tout conseil.