Patrick Drouin
2007-12-17 21:41:48 UTC
Bonjour,
J'ai un petit problème avec les regex de PHP. Voici le code :
<?php
$str="aabcc";
$pattern="/((a+)b?(c+))/";
preg_match_all($pattern,$str,$matches);
print_r($matches);
?>
Ce que je m'attendrais à avoir en retour est :
a
aa
c
cc
abc
aabc
abcc
aabbcc
Mais j'obtiens ça :
Array
(
[0] => Array
(
[0] => aabcc
)
[1] => Array
(
[0] => aabcc
)
[2] => Array
(
[0] => aa
)
[3] => Array
(
[0] => cc
)
)
Je n'ai donc que les chaînes maximales...
Des idées?
Patrick
J'ai un petit problème avec les regex de PHP. Voici le code :
<?php
$str="aabcc";
$pattern="/((a+)b?(c+))/";
preg_match_all($pattern,$str,$matches);
print_r($matches);
?>
Ce que je m'attendrais à avoir en retour est :
a
aa
c
cc
abc
aabc
abcc
aabbcc
Mais j'obtiens ça :
Array
(
[0] => Array
(
[0] => aabcc
)
[1] => Array
(
[0] => aabcc
)
[2] => Array
(
[0] => aa
)
[3] => Array
(
[0] => cc
)
)
Je n'ai donc que les chaînes maximales...
Des idées?
Patrick