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

VB.NET Discussion :

Test de la validité d'un EMAIL en VB


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Homme Profil pro
    Inscrit en
    Mai 2013
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mai 2013
    Messages : 19
    Par défaut Test de la validité d'un EMAIL en VB
    Bonjour , j'essayer de tester la validité d'une adresse email dans un textbox , donc j'ai mis le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    If TxtAdrClient.Text.IndexOf("@") = -1 Or TxtAdrClient.Text.IndexOf(".") = -1 Then
    MessageBox.Show("Veuillez entrer un email valide !", "ERREUR", MessageBoxButtons.OK, MessageBoxIcon.Error)
    mais si on met dans l email juste @. ou .@ ça passe . donc j'ai mis ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    If TxtAdrClient.Text Like "*[a-zA-Z]*[\.\-]*[a-zA-Z]@*[a-zA-Z]*[\.\-]*[a-zA-Z]" = Nothing Then 
    MessageBox.Show("Veuillez entrer un email valide !", "ERREUR", MessageBoxButtons.OK, MessageBoxIcon.Error)
    et le problème avec ce dernier code c'est que il doit y avoir un point avant @ par exemple si je met pedro@gmail.com il me fait erreur

    Quelqu'un à une idée comment faire ? Merci

  2. #2
    Membre Expert
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Billets dans le blog
    7
    Par défaut
    Bonjour rpedro0921,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
      Private Function IsValidEmail(email As String) As Boolean
            Try
                Dim addr = New System.Net.Mail.MailAddress(email)
                Return True
            Catch
                Return False
            End Try
        End Function
    Source

  3. #3
    Membre Expert
    Homme Profil pro
    Développeur .Net / Delphi
    Inscrit en
    Juillet 2002
    Messages
    738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Développeur .Net / Delphi
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2002
    Messages : 738
    Par défaut
    Bonjour,

    Ou bien à l'aide d'une expression régulière :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Function IsValidEmail(Byval email as string) as boolean
      dim emailExpr As new System.Text.RegularExpressions.Regex("^([\w]+)@([\w]+)\.([\w]+)$")
      return emailExpr.IsMatch(email) 
    End Function
    Ah, j'avais pas vu que sans le lien proposé par Wallace1, la solution de l'expression régulière était aussi proposée mais avec une expression relativement complexe que je n'ai pas le courage d'étudier

  4. #4
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 197
    Par défaut
    lever une exception quand on peut l'éviter est légèrement dérangeant
    le regex est chiant à écrire mais d'autres se sont posés la question avant donc c'est juste du code à reprendre
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  5. #5
    Membre actif
    Homme Profil pro
    Inscrit en
    Mai 2013
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mai 2013
    Messages : 19
    Par défaut
    Voilà la solution , ça marche bien , pas la peine d écrire une fonction , 1 ligne de code suffisante

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    If TxtAdrClient.Text Like "*[a-zA-Z0-9\.\-\_]*[a-zA-Z0-9]@[a-zA-Z]*[\.]*[a-zA-Z]" = Nothing Then
    MessageBox.Show("Veuillez entrer un email valide !", "ERREUR", MessageBoxButtons.OK, MessageBoxIcon.Error)

  6. #6
    Membre Expert Avatar de callo
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Février 2004
    Messages
    887
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Togo

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Service public

    Informations forums :
    Inscription : Février 2004
    Messages : 887
    Par défaut
    Citation Envoyé par rpedro0921 Voir le message
    Voilà la solution , ça marche bien , pas la peine d écrire une fonction , 1 ligne de code suffisante
    Et si tu devrais faire le test à plusieurs endroits dans ton programme? Reproduirais-tu n fois la même ligne de code?
    C'est pas parce que c'est une seule ligne qu'on de devrait pas en faire forcément une fonction.

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

Discussions similaires

  1. Controler la validité d'un email
    Par argoet dans le forum PL/SQL
    Réponses: 2
    Dernier message: 28/08/2008, 14h52
  2. Vérifier la validité d'un email en ASP VB
    Par Cmoi11 dans le forum ASP.NET
    Réponses: 4
    Dernier message: 13/08/2008, 14h45
  3. Réponses: 5
    Dernier message: 05/07/2006, 18h54
  4. test de la validité d'un caractere
    Par pimousse92 dans le forum C
    Réponses: 35
    Dernier message: 15/11/2005, 19h03
  5. Script validité d'un email ?
    Par rocs dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 15/06/2005, 14h53

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