preg_match_all et balise multiple
Bonjour,
Soit l'expression régulière :
Code:
1 2 3
|
$pattern = "`\[l([0-9]*)\](.*)\[/l([0-9]*)\]`";
preg_match_all($pattern, $textarea, $matches, PREG_SET_ORDER ) |
Qui est cencé attraper les choses qui ressemblent a
Code:
1 2 3
|
aaa [l1]test[/l1] bbb
aaa [l2]test[/l2] [l2]test encore[/l2] bbb |
Pour la premiere ligne, c'est nickel genre un print_r me donne :
Code:
1 2 3 4 5 6 7 8
|
[0] => Array
(
[0] => [l1]test[/l1]
[1] => 1
[2] => test
[3] => 1
) |
Pour la deuxième ligne, naturellement, j'aimerai deux tableaux ayant la même tête que le premier, par contre, j'obtiens :
Code:
1 2 3 4 5 6 7 8
|
[1] => Array
(
[0] => [l2]test[/l2] [l2]test encore[/l2]
[1] => 2
[2] => test[/l2] [l2]test encore
[3] => 2
) |
Il a pris la "plus longue" chaine viable avec l'expression régulière, alors qu'il me faudrai les plus courtes. C'est possible ou je dois me palucher ca a la main ?
Merci d'avance !
--
Rakken