Une tite rejex facile pour mettre en forme !!!

Eléphant du PHP | 218 Messages

23 avr. 2010, 12:57

Bonjour, alors un truc qui va vous paraître surement très simple mais sur lequel jme prend la tête. :?
j'aimerais grace à une rejex, autoriser un chiffre compris entre 1 et 18. ci-dessous ma rejex [0-9]
$images = glob('../../thumb/' . $image . '_[0-9].jpg');
Le problème est quelle autorise seuleument un chiffre entre 0 et 9. Alors normalement il me semble qu'il faut faire ça #[0-9]+# mais dans un lien ca veu pas... Chiotte!
Cadeaux personnalisés pour toute la famille :
https://cadeauxplaisir.com/

ViPHP
ViPHP | 5462 Messages

23 avr. 2010, 13:54

1[0-8]?

Eléphant du PHP | 218 Messages

23 avr. 2010, 14:05

heuuu non! ca affiche que de 10 à 18 là :)
Cadeaux personnalisés pour toute la famille :
https://cadeauxplaisir.com/

ViPHP
ViPHP | 5462 Messages

23 avr. 2010, 14:32

comme ca alors :wink:

Code : Tout sélectionner

^((1[0-8]?$)|\d)$

Eléphant du PHP | 218 Messages

23 avr. 2010, 14:43

$images = glob('../../thumb/' . $image . '_(^1[0-8]?$)|^\d$#.jpg');
non marche pas! :( en fait il aurait suffit de cette rejex #[0-9]+# mais dans un chemin apparemment ca prend en compte que des rejex comprise entre [ et ] :?
Cadeaux personnalisés pour toute la famille :
https://cadeauxplaisir.com/

ViPHP
ViPHP | 5462 Messages

23 avr. 2010, 14:55

test sans les ^ et $

Eléphant du PHP | 218 Messages

23 avr. 2010, 15:12

$images = glob('../../thumb/' . $image . '_((1[0-8]?$)|\d).jpg');
marche pas non plus :(
Cadeaux personnalisés pour toute la famille :
https://cadeauxplaisir.com/

Eléphant du PHP | 70 Messages

23 avr. 2010, 17:30

Plusieurs possibilités :
$images = glob('../../thumb/' . $image . '_[0-9]{1,2}.jpg');
$images = glob('../../thumb/' . $image . '_[0-9]{1,}.jpg');
$images = glob('../../thumb/' . $image . '_[0-9][0-8].jpg');
Pas tester donc je ne sais pas si ça fonctionne

Eléphant du PHP | 218 Messages

23 avr. 2010, 17:41

arf! Les deux premiers ne fonctionne pas et le troisieme affiche de 10 à 18.... :(
Cadeaux personnalisés pour toute la famille :
https://cadeauxplaisir.com/

Eléphant du PHP | 70 Messages

23 avr. 2010, 17:50

Et avec des parenthèse
$images = glob('../../thumb/' . $image . '_([0-9]{1,2}).jpg');
$images = glob('../../thumb/' . $image . '_([0-9]{1,}).jpg');
$images = glob('../../thumb/' . $image . '_([0-9][0-8]?).jpg');
$images = glob('../../thumb/' . $image . '_([0-9]+).jpg');
Modifié en dernier par Toons43 le 23 avr. 2010, 18:03, modifié 2 fois.

Eléphant du PHP | 218 Messages

23 avr. 2010, 18:01

non toujours rien aucun des 4 fonctionnes... Les parentheses je crois qu'il aime pas ca :?
Cadeaux personnalisés pour toute la famille :
https://cadeauxplaisir.com/

Eléphant du PHP | 70 Messages

23 avr. 2010, 18:03

En lisant la doc su glob(), je pense que ceci devrait marcher
$images = glob('../../thumb/' . $image . '_[0-9]*.jpg');
$images = glob('../../thumb/' . $image . '_{1,2,3,4,5,6,7,8,9,10,etc..}.jpg');

ViPHP
ViPHP | 2287 Messages

23 avr. 2010, 18:04

C'est un glob(), pas une regexp...

Ce que tu veux faire n'est pas possible en un seul glob. Au mieux en deux, mais bon. Pour moi il serait plus lisible de glober tout ce qui ressemble à des chiffres et de filtrer le résultat après coup avec une fonction plus adaptée.
if(!@work()){ Nespresso(); } else { what(); }
______________________________

Eléphant du PHP | 170 Messages

24 avr. 2010, 00:38

Bonsoir,
Ce que tu veux faire n'est pas possible en un seul glob.
il semblerait que si :wink:
$images = glob('../../thumb/' . $image . '_{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18}.jpg',GLOB_BRACE);
( testé )

ViPHP
ViPHP | 2287 Messages

24 avr. 2010, 04:35

Exact, autant pour moi... ( :arrow: au dodo Cali :) )
if(!@work()){ Nespresso(); } else { what(); }
______________________________