Exp régulière pour valider un email dans un formulaire (validation)

Soyez le premier à donner votre avis sur cette source.

Snippet vu 20 569 fois - Téléchargée 27 fois

Contenu du snippet

Vérifie la mise en forme d'un email récupéré d'un formulaire.
Autorise les noms de domaines en lettre ou en adresse IP.
Noms de domaines longs acceptés.

Source / Exemple :


/^[^@]+@(([\w\-]+\.){1,4}[a-zA-Z]{2,4}|(([01]?\d?\d|2[0-4]\d|25[0-5])\.){3}([01]?\d?\d|2[0-4]\d|25[0-5]))$/

Conclusion :


Promis, je donne un code plus complet assez vite. Il n'y a ici que l'expression régulière. Maintenant vous pouvez créé votre code en utilisant cette expression.
Mike

A voir également

Ajouter un commentaire

Commentaires

Messages postés
8
Date d'inscription
mardi 4 mars 2008
Statut
Membre
Dernière intervention
17 avril 2010

voila c'est le mien : --------------------->ENJOY!
3 expression regulier pour
1 valider IP multicast
2 valider IP generale ip4
3 valider un email
c'est a vous de le personalise selon tes besion

var url = document.ajoutt.Url.value;
var verif = /^((22[4-9]|23[0-9])\.([01]?\d\d?|2[0-4]\d|25[0-5])\.([01]?\d\d?|2[0-4]\d|25[0-5])\.([01]?\d\d?|2[0-4]\d|25[0-5]))$/
POUR VALIDE UN IP MULTICAST
//var verif = /^(((1|0)?[0-9]{1,2}|25[0-5]|2[0-4][0-9])\.){3}((1|0)?[0-9]{1,2}|25[0-5]|2[0-4][0-9])$/ POUR VALIDER UN IP NORMAL
//var verif = /^[a-zA-Z0-9_-]+@[a-zA-Z0-9-]{2,}[.][a-zA-Z]{2,3}$/ POUR VALIDE UN EMAIL
if (verif.exec(url) == null)
{
msg +="\nURL Format incorrect . ";
x=1;
}
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
35
t'as oublié les points....
Messages postés
26
Date d'inscription
vendredi 26 avril 2002
Statut
Membre
Dernière intervention
4 octobre 2006

Pas efficace : laisse passer : ._@a.com et autres...
La syntaxe des expressions régulières est effectivement complexe.

Voila la soluce complète :
function EmailOK(UnEmail)
{
// expression régulière : email de type minimum : x@x.xx, maxi : n(nx.)nx@n(nx.)xxx
// accepte les emails en majuscule, les chiffres, et les caractères '-' et '_'
var re = /([a-z0-9]+([-_]?[a-z0-9]+)*.)*[a-z0-9]+([-_]?[a-z0-9]+)*@([a-z0-9]+([-_]?[a-z0-9]+)*.)+[a-z]{2,4}/gi;
return (UnEmail.value.match(re) == UnEmail.value);
}

Evidemment pour la portabilité il vaut mieux voir le code de apxa
http://www.javascriptfr.com/article.aspx?Val=359
qui n'utilise pas d'expression régulière.
Messages postés
406
Date d'inscription
mardi 7 mai 2002
Statut
Membre
Dernière intervention
2 octobre 2004

pas mal, bravo

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.