Précédent   Forum des professionnels en informatique > PHP > Langage > Regex
Regex Forum d'entraide sur les expressions rationnelles PHP. Avant de poster -> FAQ regex, Cours de regex et Sources de regex
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 19/11/2007, 09h03   #1
Membre actif
 
Inscription : mai 2004
Messages : 478
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 478
Points : 154
Points : 154
Envoyer un message via MSN à maysa
Par défaut Interprétation d'expression

Bonjour quelqu'un pourrait il m'expliquer cette expression ? je débute...

Code :
^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
maysa est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/11/2007, 11h20   #2
Membre Expert
 
Avatar de riete
 
Homme Thierry
NFC & DevWeb
Inscription : avril 2006
Messages : 1 175
Détails du profil
Informations personnelles :
Nom : Homme Thierry
Âge : 51
Localisation : France

Informations professionnelles :
Activité : NFC & DevWeb
Secteur : Bâtiment

Informations forums :
Inscription : avril 2006
Messages : 1 175
Points : 1 366
Points : 1 366
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/
riete est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/11/2007, 12h00   #3
En attente de confirmation mail
 
Inscription : juin 2002
Messages : 6 164
Détails du profil
Informations forums :
Inscription : juin 2002
Messages : 6 164
Points : 6 404
Points : 6 404
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.
julp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/11/2007, 12h05   #4
Membre actif
 
Inscription : mai 2004
Messages : 478
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 478
Points : 154
Points : 154
Envoyer un message via MSN à maysa
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
maysa est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/11/2007, 13h07   #5
En attente de confirmation mail
 
Inscription : juin 2002
Messages : 6 164
Détails du profil
Informations forums :
Inscription : juin 2002
Messages : 6 164
Points : 6 404
Points : 6 404
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.
julp est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 16h07.


 
 
 
 
Partenaires

Hébergement Web