my @x = ($x =~ m/(((.*)))/g); ne donne pas le bon résultat (une seule occurence)...
'scusez le repost .* est greedy (gourmand) il faut le limiter my @x = ($x =~ m/((([^)]*)))/g);
ou le rendre moins gourmand my @x = ($x =~ m/(((.*?)))/g);
Ps: les 'valeurs peuvent éventuellement contenir des parentheses !
Merci.
-- dominix
Jérémy JUST
On Sun, 21 Nov 2004 17:33:29 +0000 Goudvin Emmanuel wrote:
my @x = ($x =~ m/(((.*)))/g); ne donne pas le bon résultat (une seule occurence)...
Tu as regardé ce que contenais cette occurrence? Elle contient tout ce qui commence au premier `((' et fini au dernier `))', parce que le quantificateur `*' est gourmand (il mange le plus possible). Essaie l'opérateur parcimonieux `*?':
m/(((.*?)))/g
Ps: les 'valeurs peuvent éventuellement contenir des parentheses !
Si elles ne contiennent pas `))', c'est bon.
-- Jérémy JUST
On Sun, 21 Nov 2004 17:33:29 +0000
Goudvin Emmanuel <Emmanuel.Goudvin@voila.fr> wrote:
my @x = ($x =~ m/(((.*)))/g);
ne donne pas le bon résultat (une seule occurence)...
Tu as regardé ce que contenais cette occurrence? Elle contient tout ce
qui commence au premier `((' et fini au dernier `))', parce que le
quantificateur `*' est gourmand (il mange le plus possible).
Essaie l'opérateur parcimonieux `*?':
m/(((.*?)))/g
Ps: les 'valeurs peuvent éventuellement contenir des parentheses !
On Sun, 21 Nov 2004 17:33:29 +0000 Goudvin Emmanuel wrote:
my @x = ($x =~ m/(((.*)))/g); ne donne pas le bon résultat (une seule occurence)...
Tu as regardé ce que contenais cette occurrence? Elle contient tout ce qui commence au premier `((' et fini au dernier `))', parce que le quantificateur `*' est gourmand (il mange le plus possible). Essaie l'opérateur parcimonieux `*?':
m/(((.*?)))/g
Ps: les 'valeurs peuvent éventuellement contenir des parentheses !
Si elles ne contiennent pas `))', c'est bon.
-- Jérémy JUST
Damien GUERIN
"Goudvin Emmanuel" a écrit dans le message de news: hj3od.16576$
Bonjour,
J'essaye de récupérer mes 2 valeurs 'value 1' et 'value 2' de la chaine suivante: