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 :

problème avec expression regulière [RegEx]


Sujet :

Langage PHP

  1. #1
    Membre habitué
    Inscrit en
    Octobre 2006
    Messages
    360
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 360
    Points : 197
    Points
    197
    Par défaut problème avec expression regulière
    Mon probleme et le suivant:

    j'ai une variable $texte

    je ve verifier qu'elle ne contient que du texte

    j'ai penser a un truck du style :

    "[:alpha:]^[a-z]$"

    mais bon je ne conprent pas du tous comment sa s'utilise

  2. #2
    Expert éminent sénior

    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
    Points : 17 777
    Points
    17 777
    Par défaut
    Je vous recommande de prendre le temps de lire des tutoriels très bien expliqué pour cela, comme : Initiation aux expressions régulières en PHP.

    Le métacaractère ^ n'est, a priori, pas à sa place dans votre regexp puisqu'il marque un début de chaîne (ou ligne). Il aurait plutôt sa place en début. On en arrive donc à quelque chose comme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $texte = 'azerty82';
    if (preg_match('#^[a-z]+$#', $texte)) {
       echo 'OK';
    } else {
       echo 'KO';
    }
    Cette expression régulière assure que $texte n'est constitué que (grâce aux ancres ^ et $) de caractères minuscules (classe [a-z]) sachant qu'il en faut au moins un (présence du métacaractère + succédant cette classe).

    Libre à vous de compléter cette classe en fonction de votre contrôle (exemple pour les chiffres et minuscules : [a-z0-9] qui remplacerait [a-z]).


    Julp.

  3. #3
    Membre habitué
    Inscrit en
    Octobre 2006
    Messages
    360
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 360
    Points : 197
    Points
    197
    Par défaut
    je reconnait que sa marche parfaitement
    merci beaucoup

    mais pour se qui est des explications je te donne 2/10

    non en faite merci beaucoup mais c'est de ma faute surement car je comprent pas


    si quelqu'un veut bien prendre le temps de m'explique tous les symbols et pourquoi on les utilisent dans se sans et pas dans un autre merci

  4. #4
    Membre averti Avatar de sohnic
    Femme Profil pro
    bioinfo
    Inscrit en
    Mai 2003
    Messages
    426
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : bioinfo

    Informations forums :
    Inscription : Mai 2003
    Messages : 426
    Points : 434
    Points
    434
    Par défaut
    Bonjour,
    Bon, je vais tenter d'etre plus pedagogue (mais ca n'est pas dit !).

    On a l'expression suivante :
    #^[a-z]+$#
    qui veut dire qu'on cherche le motif qui est compris entre les deux #. Ici les # ne sont que des délimiteurs.
    Ensuite regardons [a-z] : je cherche UN caractère qui est dans l'intervalle a-z (a, b, c, ... OU z). Le + qui le suit remplace le UN caractère par AU MOINS UN caractère.
    Ensuite le ^ veut dire : la chaine commence par.
    le $ veut dire: la chaine se termine par.

    On peut donc traduire l'expression : je cherche une chaine qui ne contient que des caracteres alphabétiques (entre a et z) et au moins un. Elle ne peut contenir QUE des caracteres alphabétiques, car elle doit commencer ET finir par des caractères alphabétiques.

    J'espère que tu n'es pas pas plus embrouillé !!

    Sohnic

  5. #5
    Membre habitué
    Inscrit en
    Octobre 2006
    Messages
    360
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 360
    Points : 197
    Points
    197
    Par défaut
    la oui c'est parfait toi tu a droit a 12/10

    oui tu est un bon prof ou je suis moin debille que je le croyer ou un peut des deux


    merci a+

  6. #6
    Membre averti Avatar de sohnic
    Femme Profil pro
    bioinfo
    Inscrit en
    Mai 2003
    Messages
    426
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : bioinfo

    Informations forums :
    Inscription : Mai 2003
    Messages : 426
    Points : 434
    Points
    434
    Par défaut
    Merci pour le compliment, mais pas de reconversion envisagée pour autant !
    Je reconnais que les expressions regulieres, c'est pas ce qu'il y a de plus facile à manipuler surtout si on ne les pratique pas souvent.

    Bon dev,
    S.

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

Discussions similaires

  1. getMethods avec expression regulière
    Par al3alwa dans le forum Langage
    Réponses: 3
    Dernier message: 03/01/2008, 17h19
  2. Problème avec express studio
    Par kokel dans le forum Windows Forms
    Réponses: 17
    Dernier message: 10/09/2007, 18h06
  3. Problème avec expression régulière
    Par zoidy dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 22/08/2007, 09h43
  4. pb avec expression regulière
    Par siham_06 dans le forum Langage
    Réponses: 2
    Dernier message: 02/10/2006, 13h27
  5. [RegEx] Problème avec expressions régulières.
    Par Cygnus Saint dans le forum Langage
    Réponses: 12
    Dernier message: 14/08/2006, 11h55

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