Eregi_replace limité

Signaler
Messages postés
119
Date d'inscription
mercredi 23 juillet 2003
Statut
Membre
Dernière intervention
6 novembre 2008
-
Messages postés
119
Date d'inscription
mercredi 23 juillet 2003
Statut
Membre
Dernière intervention
6 novembre 2008
-
Bonjour,

Je souhaite mettre une balise encadrant toutes les lignes commençant par #.
Pour cela j'utilise la fonction eregi_replace comme cela :

$txt=eregi_replace("\n\#(.*)\n","\n\\1\n",$txt);

- $txt est la variable contenant le texte que je veux traiter
- les 2 \n, au début et à la fin, me permettent d'isoler une ligne
- (.*) expression régulière signifiant que je veux encadrer tous les caractères entre les \n

Le problème c'est que lorsque j'utilise cette fonction c'est que l'encadrement commence bien au 1er "\n#" mais il finit au dernier "\n" du texte, au lieu de finir au premier saut de ligne suivant '\n#'.

J'éspère que je me suit bien fait comprendre.

Savez vous comment faire pour que eregi_replace finisse à la première occurence suivant l'exrpession régulière ?

Merci d'avance,

1 réponse

Messages postés
119
Date d'inscription
mercredi 23 juillet 2003
Statut
Membre
Dernière intervention
6 novembre 2008
3
Pour info j'ai réussi à faire ce que je voulais avec preg_replace et l'option U (ungreedy).
L'expression recherché ressemble donc à ça : '#expr#U'