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

Requêtes MySQL Discussion :

MYSQL: Expression régulière


Sujet :

Requêtes MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert
    Avatar de yotta
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Septembre 2006
    Messages
    1 097
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2006
    Messages : 1 097
    Par défaut MYSQL: Expression régulière
    Bonjour à vous,
    J'ai un petit soucis dans l'utilisation d'une expression régulière avec MySQL. Je possède une table contenant les informations au sujet de personnes. Parmi ces informations, il y a l'adresse Email. Cependant, les gen qui réalisent la saisie de ces informations ne sont pas très doués du clavier, et comme l'ancien logiciel qu'ils utilisaient n'éffectuait aucune vérification de syntaxe sur les adresses Email, je me retrouve avec des déclinaisons très exotiques d'adresse bien évidement fausse.
    J'ai donc mis au point une expression régulière pour reconnaître la bonne syntaxe d'une adresse Email. Voilà la chaîne de cette expression régulière :
    '(^[a-z])([a-z0-9]+)?(\.|-)?([a-z0-9]+)@([a-z0-9]+)\.([a-z]{2,4}$)'
    L'expression régulière ainsi rédigée dans une requete SELECT sur ma table me permet éffectivement de recenser toutes les bonnes adresses, mais en fait, ce que je voudrai obtenir c'est l'inverse, c'est à dire trouver toutes celles qui ne sont pas correcte. Voici ma requete complète qui me récupère celles qui sont correcte, pourriez-vous m'aider à transformer cette requete pour qu'elle me trouve celles qui ne le sont pas ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT Email
    FROM emprunteurs
    WHERE Email
    REGEXP '(^[a-z])([a-z0-9]+)?(\.|-)?([a-z0-9]+)@([a-z0-9]+)\.([a-z]{2,4}$)'
    Merci d'avance.
    Une technologie n'est récalcitrante que par ce qu'on ne la connait et/ou comprend pas, rarement par ce qu'elle est mal faite.
    Et pour cesser de subir une technologie récalcitrante, n'hésitez surtout pas à visiter les Guides/Faq du site !

    Voici une liste non exhaustive des tutoriels qui me sont le plus familiers :
    Tout sur Java, du débutant au pro : https://java.developpez.com/cours/
    Tout sur les réseaux : https://reseau.developpez.com/cours/
    Tout sur les systèmes d'exploitation : https://systeme.developpez.com/cours/
    Tout sur le matériel : https://hardware.developpez.com/cours/

  2. #2
    Membre Expert
    Avatar de yotta
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Septembre 2006
    Messages
    1 097
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2006
    Messages : 1 097
    Par défaut Désolé, j'ai posté trop vite...
    Effectivement, je viens de trouver la solution sur le site de MySQL.
    En fait, ma question était très con.
    voilà la réponse :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT Email
    FROM emprunteurs
    WHERE Email
    NOT REGEXP '(^[a-z])([a-z0-9]+)?(\.|-)?([a-z0-9]+)@([a-z0-9]+)\.([a-z]{2,4}$)'
    Cette requete me permet éffectivement de recencer tous les enregistrements qui contiennent une adresse Email érronnée.
    Une technologie n'est récalcitrante que par ce qu'on ne la connait et/ou comprend pas, rarement par ce qu'elle est mal faite.
    Et pour cesser de subir une technologie récalcitrante, n'hésitez surtout pas à visiter les Guides/Faq du site !

    Voici une liste non exhaustive des tutoriels qui me sont le plus familiers :
    Tout sur Java, du débutant au pro : https://java.developpez.com/cours/
    Tout sur les réseaux : https://reseau.developpez.com/cours/
    Tout sur les systèmes d'exploitation : https://systeme.developpez.com/cours/
    Tout sur le matériel : https://hardware.developpez.com/cours/

  3. #3
    Invité de passage
    Profil pro
    Inscrit en
    Février 2009
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 1
    Par défaut
    Attention l'expression régulière ci-dessus ne valide pas les adresses du type :
    0611223344@operateur.fr
    pourtant très courantes.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 14/06/2009, 11h12
  2. Expressions régulières vérifiant la validité de requêtes MySQL
    Par gwinyam dans le forum Langages de programmation
    Réponses: 6
    Dernier message: 02/05/2008, 08h55
  3. [expression régulière] mon cerveau fait des noeuds..
    Par nawac dans le forum Algorithmes et structures de données
    Réponses: 7
    Dernier message: 27/05/2003, 10h06
  4. Expressions réguliéres
    Par Tooms dans le forum Langage
    Réponses: 4
    Dernier message: 06/12/2002, 18h42
  5. Réponses: 5
    Dernier message: 11/06/2002, 15h21

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