Re,

J'ai chang� tes paterns (supprimant la fin)

$str = "<foo>hello there</foo>\n<foo>go there</foo>\n";
echo $str;

#$str1 = preg_replace("%<foo.*hello.*</foo>%Us","replaced1", $str);
$str1 = preg_replace("%<foo.*hello.*</foo>%","replaced1", $str);
echo $str1;

res:

replaced1
<foo>go there</foo>

#$str2 = preg_replace("%<foo.*go.*</foo>%Us","replaced2", $str);
$str2 = preg_replace("%<foo.*go.*</foo>%","replaced2", $str);
echo $str2;

<foo>hello there</foo>
replaced2

C'est ce que tu voulais... Je pense que c'est en rapport avec les param�tres par d�faut, mais pour greedy... ?

Bonne fin de dimanche,

Magnus


patrick jayet wrote:

Hello Magnus!

Merci pour ta r�ponse.

| Il est clair que cel� va fonctionner pour tout $str. php ne va pas faire
| attention au fait que tu fermes ton tag.
| Il applique la recherche � toute la variable. Et il trouve ce qu'il
| cherche m�me s'il y a une possibilit� + petite (en taille).
|
| Tant que tu n'as pas de tag � plusieurs niveau
| (<foo><foo2>kldsflkjf</foo2></foo>) tu devrais s�parer $str (en deux
| dans ton exemples). Et ensuite appliquer ta recherche.

Mais justement, dans mes expressions r�guli�res, j'utilise le param�tre
U, ce qui veut dire que je lui indique d'�tre par d�fault non greedy
(non gourmant). Donc il devrait chercher les cha�nes de charact�re
minimales pour (.*) afin de trouver un match. Et cela fonctionnne
effectivement pour ma 1e des 2 expression (autrement il matcherait
�galement la totalit� de <foo>..</foo><foo>..</foo>, or il ne match que
le 1e tag <foo>..</foo>).

Y a-t'il un autre prob dans mon expressions r�guli�re?

Bonne journ�e!

Pat


|> $str = "<foo>hello there</foo>\n<foo>go there</foo>\n"; |> echo $str; |> |> <foo>hello there</foo> |> <foo>go there</foo> |> |> $str1 = preg_replace("%<foo.*hello.*</foo>%Us","replaced1", $str); |> echo $str1; |> |> replaced1 |> <foo>go there</foo> |> |> $str2 = preg_replace("%<foo.*go.*</foo>%Us","replaced2", $str); |> echo $str2; |> |> replaced2

_______________________________________________ gull mailing list [EMAIL PROTECTED] http://lists.alphanet.ch/mailman/listinfo/gull

_______________________________________________
gull mailing list
[EMAIL PROTECTED]
http://lists.alphanet.ch/mailman/listinfo/gull

Répondre à