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

Langage PHP Discussion :

Double test [RegEx]


Sujet :

Langage PHP

  1. #1
    Membre averti
    Inscrit en
    Décembre 2007
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 30
    Par défaut Double test
    Bonjour,

    Débutant avec les expressions régulières en php, je m'adresse aux habitués

    Je cherche a effectuer 2 tests sur une variable.
    J'ai d'abord fait ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ereg('^[3,5,6]',$mavariable)
    Donc ceci test si ma $mavariable commence par 3, 5, ou 6

    Je souhaite contrôler si elle fait bien 5 caractères numériques.
    Je pense qu'il doit y avoir un truc du genre {5}, mais niveau syntaxique, je ne comprends pas tout.

    Pourriez vous m'indiquer la bonne syntaxe ?


    Merci.

  2. #2
    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 661
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    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 661
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ereg('^[356]\d{4}$',$mavariable)
    ^= debut de chaine
    [356] = classe de caractères autorisés
    \d=numérique {4} = 4 fois

    attention \d comprend le séparateur decimal et les symboles positifs et négatifs du système
    si tu ne veux que des chiffres:


    [0-9] = intervalle de 0 à 9 autorisé
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre averti
    Inscrit en
    Décembre 2007
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 30
    Par défaut
    Merci pour la réponse

    Juste ce qu'il me fallait

    Par contre, je galère toujours sur la même chose.

    Cette fois sur une variable : contrôler qu'elle fait 5 caractères (ni plus ni moins) alphanumériques.

    J'ai tenté ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ereg('[:alnum:]{4}$',$mavariable)
    Apparemment je suis trop mauvais

  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 661
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    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 661
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ereg('[0-9a-zA-Z]{5}$',$mavariable)
    pas de ; ni , ni + ni -
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  5. #5
    Membre averti
    Inscrit en
    Décembre 2007
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 30
    Par défaut
    Merci.

    Par contre, ca fonctionne avec 5 caractères, ou + !
    Y'a-t-il moyen de contrôler ceci ?

  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 661
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    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 661
    Billets dans le blog
    1
    Par défaut
    desolé j'ai oublié le delimiteur de debut de chaine ,

    tu auras pu le trouver avec les explications de ma première intervention

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ereg('^[0-9a-zA-Z]{5}$',$mavariable)
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  7. #7
    Membre averti
    Inscrit en
    Décembre 2007
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 30
    Par défaut
    Il faut donc à chaque fois mettre le délimiteur de début de chaine ! ?

    En tout cas, ca fonctionne.

    Merci bien.

  8. #8
    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 661
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    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 661
    Billets dans le blog
    1
    Par défaut
    pas a chaque fois, ça depend de ce que tu cherches à matcher comme pattern

    matchera toute chaine contenant une suite de 5 alpha


    matchera tout chaine qui commence par 5 alpha


    matchera tout chaine qui finit par 5 alpha


    matchera tout chaine qui commence et finit par 5 alpha docn de 5 alpha de long
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  9. #9
    Membre averti
    Inscrit en
    Décembre 2007
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 30
    Par défaut
    Ah ok !!!
    Des fois c'est con, tout est dit dans les documentations, mais j'ai dut passer à coté.
    Le $ pour la fin de chaine, ca m'éclaircit grandement les choses !

    Dur d'être administrateur réseau

    lol

  10. #10
    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 661
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    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 661
    Billets dans le blog
    1
    Par défaut
    Si ça peut te rassurer j'ai potassé toutes les doc que j'ai pu trouver sur le web sur les regExp mais je n'y comprenais rien ... et puis un jour il y a environ deux ans j'ai eu un déclic parce que l'on m'a expliqué 2 ou trois trucs
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

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

Discussions similaires

  1. Concaténation et double test
    Par AlloAmeur dans le forum Jasper
    Réponses: 4
    Dernier message: 31/05/2010, 13h20
  2. Double test avec les commentaires conditionnels
    Par Nixar dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 07/02/2009, 16h53
  3. Réponses: 15
    Dernier message: 28/11/2008, 17h13
  4. test de xrandr en mode double écran
    Par troumad dans le forum Shell et commandes GNU
    Réponses: 2
    Dernier message: 09/07/2008, 12h12
  5. Double exécution des tests
    Par romaintaz dans le forum Maven
    Réponses: 18
    Dernier message: 27/09/2007, 17h25

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