IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

RegExp de vérification d'email, accents ou pas ? [RegExp]


Sujet :

JavaScript

  1. #1
    Membre expérimenté
    Avatar de Luke spywoker
    Homme Profil pro
    Etudiant informatique autodidacte
    Inscrit en
    Juin 2010
    Messages
    1 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Etudiant informatique autodidacte

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 077
    Points : 1 742
    Points
    1 742
    Par défaut RegExp de vérification d'email, accents ou pas ?
    Salut les javascripteurs,
    Les RegExp n'étant pas ma tasse de thé, j'ai copier, un peu adapter car en JQuery, un RegExp servant a tester la validité de la structure d'une adresse Email et j'aimerai savoir si il n'y a pas de lacunes: lettres accentuées, je sais pas si c'est permis dans une adresse Email:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    var Email= new RegExp('^[a-z0-9]+@[a-z0-9]+\\.[a-z]{2,4}$', 'gi')
    Après quelques testes sa marche mais j'ai un doute concernant les caractères accentués.
    Merci pour vos avis éclairés et vos réponses.

  2. #2
    Membre actif
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    128
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 128
    Points : 210
    Points
    210
    Par défaut
    Salut !

    Non les caractères accentués ne sont pas autorisés dans la partie locale de l'email.
    Dans la partie domaine par contre c'est une autre histoire vu que maintenant les domaines peuvent être internationalisés... mais bon dans la pratique c'est tellement anecdotique que tu peux ignorer ce cas.

    Par contre ta regexp est assez incomplète :

    - la partie domaine n'accepte pas les sous domaines : adieu les utilisateurs en toto.domain.fr, ou toto.co.uk
    - la partie locale n'accepte pas plein de caractères pourtant valides comme les tirets, le +, l'underscore... mieux vaut ne pas avoir de nom composé ou utiliser les flags automatique de gmail.


    Si tu veux quelque chose de plus robuste je te conseille de lire cette page :

    http://www.regular-expressions.info/email.html

  3. #3
    Membre expérimenté
    Avatar de Luke spywoker
    Homme Profil pro
    Etudiant informatique autodidacte
    Inscrit en
    Juin 2010
    Messages
    1 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Etudiant informatique autodidacte

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 077
    Points : 1 742
    Points
    1 742
    Par défaut
    Merci beaucoup d'avoir lever le doute de mon esprit et pour les explications.
    Je me suis tromper dans mon regex ou RegExp: j'ai omis les caractères ".", "_" et "-".
    Donc le regex donne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var Email= new RegExp('^[a-z0-9._-]+@[a-z0-9_.-]+\\.[a-z]{2,4}$', 'gi')
    Et merci pour le lien.

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    je te conseillerais egalement ce site pour les reg
    http://regexlib.com/Search.aspx?k=email&c=-1&m=-1&ps=20

    et cet outil pour les tester
    http://java.developpez.com/outils/regexsr/

  5. #5
    Membre expérimenté
    Avatar de Luke spywoker
    Homme Profil pro
    Etudiant informatique autodidacte
    Inscrit en
    Juin 2010
    Messages
    1 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Etudiant informatique autodidacte

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 077
    Points : 1 742
    Points
    1 742
    Par défaut
    J'ai jeter un coup doeil a la RFC des Email: RFC 2822
    Merci pour le lien.

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    quand on voit réellement les adresses valides ou pas selon wiki :
    Citation Envoyé par wikipedia
    Exemples d'adresses valides :

    Abc@exemple.com
    Abc.123@exemple.com
    user+mailbox/department=shipping@exemple.com
    !#$%&'*+-/=?^_`.{|}~@exemple.com
    "Abc@def"@exemple.com
    "Fred Bloggs"@exemple.com
    "Joe.\\Blow"@exemple.com

    Exemples d'adresses invalides :

    Abc.exemple.com
    Le caractère @ manque.
    Abc.@exemple.com
    Le caractère . n'est pas à l'intérieur de la partie locale.
    Abc..123@exemple.com
    Le caractère . apparaît deux fois de suite.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 10/03/2010, 15h36
  2. RegExp pour vérification d'email - sous Safari et Chrome
    Par Giill dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 22/05/2009, 11h57
  3. [Mail] email ne reprenant pas la case coché d'un bouton radio
    Par zazapirouette dans le forum Langage
    Réponses: 25
    Dernier message: 23/05/2007, 16h30
  4. [RegExp] Avis aux Initiés, j'y connais pas grand chose
    Par Okena dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 04/05/2007, 15h31
  5. [RegEx] eregi vérification validité email
    Par Dsphinx dans le forum Langage
    Réponses: 4
    Dernier message: 22/12/2006, 11h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo