Preg replace et les retours à la ligne

Eléphant du PHP | 50 Messages

28 oct. 2008, 13:45

Salut à tous !
je rencontre un petit problème. En effet, j'aimerai sélectionner à l'aide de pregreplace le texte entre "refentry" et "UdmComment". J'ai donc fait comme suit :
$texte = 'f-!dsf refentry hhgfh-
ghqsq:!fg
h- UdmComment xvxcv';
$texte = preg_replace('#(.+)refentry(.+)UdmComment(.+)#', '$2', $texte);

et cela m'affiche :

f-!dsf refentry hhgfh- ghqsq:!fg h- UdmComment xvxcv

J'ai alors recherché quel caractère faisait 'dérailler' la fonction et il me semble qu'il s'agit du retour à la ligne O.o !

Possible ? Une autre erreur ? Comment résoudre ce problème ?

Merci d'avance !
JC.
Devoir de mémoire : http://voyage-etude-auschwitz.net
Projet de classe réalisé suite à un voyage au camp d'Auschwitz.

Mammouth du PHP | 2937 Messages

28 oct. 2008, 14:03

Essaie le remplacement suivant :
$texte = 'f-!dsf refentry hhgfh-
ghqsq:!fg
h- UdmComment xvxcv';
$texte = preg_replace('#\r|\n#m', '', $texte);

Eléphant du PHP | 50 Messages

28 oct. 2008, 14:52

Merci beaucoup ! Ca marche nickel !

+++
Devoir de mémoire : http://voyage-etude-auschwitz.net
Projet de classe réalisé suite à un voyage au camp d'Auschwitz.