Page 1 sur 1

Expressions régulières :(

Posté : 03 févr. 2009, 12:09
par Adilis
Bonjour à tous,
J'essaye en vain de délimiter des portions de textes avec des expressions régulières, j'aimerais exploser mon texte selon les #, Exemple du texte :

Code : Tout sélectionner

#369611 <Design=Tee shirt 1> #447782 <Design=Tee shirt 2>
Mon code :
preg_match_all( '`#(.*)#`si', $contents, $items, PREG_SET_ORDER );
Quelqu'un aurait il une idée de comment faire cette expression régulière ? Le résultat souhaité serait un tableau de ce genre :

Code : Tout sélectionner

array( 0 => '#369611 <Design=Tee shirt 1>', 1 =>'#447782 <Design=Tee shirt 2>');
En vous remerciant

Posté : 03 févr. 2009, 12:21
par jojolapine
Bonjour,
essaye quelque chose comme ça:

Code : Tout sélectionner

`#([0-9]+)([^#]*)`

Posté : 03 févr. 2009, 12:31
par Adilis
Ca fonctionne ^^
Je n'y comprend rien à ces expressions régulières, ca reste du chinois pour moi :/
En tout cas merci. J'abuse encore un peu, comment spliter ces lignes avec un expression :

Code : Tout sélectionner

<Description=Tee shirt adidas real madrid> <CodeRayon=00>
pour obtenir selon le la ligne :

Code : Tout sélectionner

array( 0 =>'Description', 1=>'Tee shirt adidas real madrid' );
ou

Code : Tout sélectionner

array( 0 =>'CodeRayon', 1=>'00' );

Posté : 03 févr. 2009, 12:35
par jojolapine
Bon alors pour t'améliorer, va voir içi: http://lumadis.be
Il y a un bon tutoriel et surtout surtout un testeur de regex qui te permet d'aller vraiement vite pour les construire!!
Pour ton second problème, test ceci:

Code : Tout sélectionner

#<(.*)=(.*)>#

[Réglé] Expressions régulières :(

Posté : 03 févr. 2009, 12:41
par Adilis
Merci beaucoup pou votre aide ainsi que pour le lien qui a l'air d'être une aide précieuse.
Tout fonctionne, Encore merci.