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 :

Expression régulière problème [Fait]


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    Ingénieur réseau et sécurité / Consultant
    Inscrit en
    Août 2005
    Messages
    1 068
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur réseau et sécurité / Consultant
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 1 068
    Par défaut Expression régulière problème
    salut

    voila jai un petit problème avec mon expression. est-ce que cette syntaxe est correcte ?

    <?php
    if(!ereg('`&#91;&#91;:digit:]]`',$tab&#91;'11'])){
    &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;echo
    'Le numéro de téléphone doit être uniquement composé des chiffres de 1 à 9.';
    &#160;&#160;&#160;&#160;&#160;&#160;}
    ?>
    Colorez votre code PHP sur les forums grâce à Developpez.com

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Par défaut
    Votre expression régulière est fausse, car elle validera toute chaîne comportant au moins un chiffre. De plus, nul besoin de délimiteurs avec la fonction ereg.

    Pour un numéro de téléphone français, je verrais plutôt :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    if(!ereg('^0[1-6][[:digit:]]{8}$',$tab['11'])) {
        echo 'Le numéro de téléphone doit être uniquement composé des chiffres de 1 à 9.';
    }

    Julp.

  3. #3
    Membre éprouvé
    Homme Profil pro
    Ingénieur réseau et sécurité / Consultant
    Inscrit en
    Août 2005
    Messages
    1 068
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur réseau et sécurité / Consultant
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 1 068
    Par défaut
    non pour un numéro suisse il me faut ! mais dis moi juste pourquoi il ne prend pas en compte ? comment dois-je faire ?

  4. #4
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Par défaut
    Regardez le tutoriel au sujet des expressions régulières. En particulier, les chapitres au sujet des ancres (pour marquer les début et fin ligne - permet de dire que votre chaîne ne doit être composée que de chiffres) et des quantifieurs (nombres d'occurences minimales et maximales).


    Julp.

  5. #5
    Membre éprouvé
    Homme Profil pro
    Ingénieur réseau et sécurité / Consultant
    Inscrit en
    Août 2005
    Messages
    1 068
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur réseau et sécurité / Consultant
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 1 068
    Par défaut
    et en plus sa ne fonctionne pas... si je met 02647533g23 sa me valide quand meme

  6. #6
    Membre éprouvé
    Homme Profil pro
    Ingénieur réseau et sécurité / Consultant
    Inscrit en
    Août 2005
    Messages
    1 068
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur réseau et sécurité / Consultant
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 1 068
    Par défaut
    bon je veux pas me casser la tete pour le moemnt.

    pour l'instant je fais avec la fonction is_numeric()

  7. #7
    Membre habitué
    Inscrit en
    Août 2006
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 17
    Par défaut
    A mon avis, c'est un peu dommage de ne pas insister sur les RegExp : c'est extrêmement utile.

    Comme te l'a dit julp, ton expression valide toute chaîne qui comporte un chiffre, quel que soit le reste de la chaîne.
    Donne-nous un exemple de numéro suisse, si tu veux qu'on t'explique le pourquoi du comment

Discussions similaires

  1. problème rs 232
    Par remy059 dans le forum Composants
    Réponses: 4
    Dernier message: 09/08/2006, 12h14
  2. [VB5] probleme rs 232
    Par moi214 dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 28/05/2006, 22h25
  3. [Comm] Changer les Bauds dans une com RS-232
    Par philippe13 dans le forum Entrée/Sortie
    Réponses: 2
    Dernier message: 27/01/2006, 10h08
  4. RS 232 envoyer des donnees
    Par psyko_flex dans le forum C
    Réponses: 2
    Dernier message: 22/11/2005, 18h49
  5. Aide sur la RS 232
    Par Andr0 dans le forum C
    Réponses: 5
    Dernier message: 12/04/2005, 13h58

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