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 :

Interprétation d'expression


Sujet :

Langage PHP

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    490
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 490
    Points : 201
    Points
    201
    Par défaut Interprétation d'expression
    Bonjour quelqu'un pourrait il m'expliquer cette expression ? je débute...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ^jaq/([^\/]*)/([0-9]*)-([0-9]*).jpg$
    il faut que :
    1. ça commence par jaq/
    2.qu'il y ait 1 ou plusieurs fois /
    3. ensuite un /
    4. ensuite 1 ou plusieurs nombres
    5. ensuite un -
    6. et encore 1 ou plusieurs nombres
    7. et que ça se termine par .jpg

    c'est ça ?
    que veut dire le ^ ici merci beaucoup

  2. #2
    Membre expérimenté Avatar de riete
    Homme Profil pro
    DevWeb - Oléiculteur
    Inscrit en
    Avril 2006
    Messages
    1 193
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : DevWeb - Oléiculteur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 193
    Points : 1 414
    Points
    1 414
    Par défaut
    Je ne suis pas un champion des expressions régulières, mais le ^ signifie NOT ou négation. Enfin si j'ai bien compris.

    Tu as pas mal d'info dans le bouquin PHP5 Avnacé chez Eyrolles.

    Si le coeur t'en dit tu as aussi le site;
    http://www.regular-expressions.info/

  3. #3
    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
    Citation Envoyé par maysa
    1. ça commence par jaq/
    Oui.
    Citation Envoyé par maysa
    2.qu'il y ait 1 ou plusieurs fois /
    Non : tout ce qui n'est ni un slash ou un antislash (* : de 0 à une infinité d'occurrences). La classe étant niée (commencée par le symbole ^ - cf remarque précédente).
    Citation Envoyé par maysa
    3. ensuite un /
    Oui.
    Citation Envoyé par maysa
    4. ensuite 1 ou plusieurs nombres
    Pas tout à fait : le quantifieur * indique au moins zéro fois.
    Citation Envoyé par maysa
    5. ensuite un -
    Oui.
    Citation Envoyé par maysa
    6. et encore 1 ou plusieurs nombres
    Même remarque que 4.
    Citation Envoyé par maysa
    7. et que ça se termine par .jpg
    Oui.

    En somme l'expression régulière correspond plus ou moins aux fichiers jpeg nommés par des chiffres et un tiret (partie ([0-9]*)-([0-9]*).jpg de l'expression) qui sont situés dans un sous répertoire (partie /([^\/]*)/ du motif) de jaq.

  4. #4
    Membre actif
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    490
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 490
    Points : 201
    Points
    201
    Par défaut
    super Merci beaucoup , je pensais que ^signifiait que ça commençait par...
    et là j'ai bien noté :

    1. ? = 0 ou 1
    2. * = 0 ou ++
    3. + = 1 ou ++

    Merci beaucoup

  5. #5
    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
    Citation Envoyé par maysa
    je pensais que ^signifiait que ça commençait par...
    Ça dépend du contexte : l'ancre ^ marque le début de la chaîne voir un début de ligne (si option m utilisée dans une syntaxe PCRE du moins). Si elle est située au début d'une classe de caractères - délimitée par des crochets (exemple [^a-z]) - elle a pour fonction de la nier : [a-z] : tout caractère alphabétique minuscule de l'ASCII non étendu (de a à z) en opposition à [^a-z] : tout ce qui n'est pas un caractère alphabétique minuscule de l'ASCII non étendu (des chiffres, une lettre majuscule, un caractère de ponctuation, etc).

    Citation Envoyé par maysa
    1. ? = 0 ou 1
    2. * = 0 ou ++
    3. + = 1 ou ++
    Oui.

Discussions similaires

  1. Réponses: 4
    Dernier message: 18/11/2011, 10h19
  2. Réponses: 6
    Dernier message: 02/06/2011, 15h40
  3. Réponses: 4
    Dernier message: 18/05/2011, 14h11
  4. JS et expression régulière mal interprétée
    Par frochard dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 16/05/2009, 03h46
  5. Problème interprétation expression EL
    Par devor dans le forum JSF
    Réponses: 4
    Dernier message: 12/07/2006, 12h04

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