2013-02-08 4 views
0

J'ai un texte (HTML) dans une chaîne et dans ce texte il y a plusieurs occurrences de ce "Groupe" <br><hr/><br>. La simple expression régulière (<br><hr\/><br>) trouve la première occurence. Ce que je cherche est un moyen d'utiliser preg_replace pour remplacer tous les des occurrences avec un autre texte. Quand j'utilise l'expression rationnelle que j'ai avec preg_replace, je reçois juste une chaîne vide - sans erreurs dans mon fichier journal.Remplacer toutes les occurrences du groupe de texte par preg_replace

Ce preg_replace fonctionne pour moi: preg_replace('@(<br><hr\/><br>)@', ' *POST* ', $string);

+3

Utilisez votre regex avec le drapeau '/ de g' pour remplacer tout événement. –

+1

Si c'est juste une chaîne statique, pourquoi ne pas utiliser 'str_replace'? –

Répondre

0

Testez

$output=preg_replace_callback("#<br><hr\/><br>#",function($matches){print_r($matches[0]."\n");return 'replace Text';},' '.$str.' '); 
+0

La réponse de @ mohammad-mohsenipur fonctionne, mais l'erreur était tout à moi :-(Dans une ligne deper dans le code il y avait une petite erreur! – Rune

Questions connexes