mixmastertobsi: preg_replace Problem

Beitrag lesen

Hallo,

ich scheiter gerade an einer regular expression Anweisung.

Der Text ist wie folgt.

TEXTTEXT {{ ZITAT 1 {{ ZITAT 2 }} }} ENDE TEXT

Nun soll das zwischen {{ und }} in einen DIV-Container gepackt werden.

Meine Anweisung war wie folgt

preg_replace("/{{([^\}\{]*)}}/i","<div class=\"quote\">$1</div>",$text);

aber ich bekomme nur einmal die "Klammer" ersetzt

TEXTTEXT {{ ZITAT 1 <div class="quote"> ZITAT 2 </div> }} ENDE TEXT

eiegntlich sollte es so ausehen.

TEXTTEXT <div class="quote"> ZITAT 1 <div class="quote"> ZITAT 2 </div> </div> ENDE TEXT

Wenn ich die Ausgabe zweimal hintereinander mache, klappt es, aber das kann ja nicht die Lösung sein, denn theoretisch könnte der Text 10 solcher Klammern haben - also brauche ich 10 mal diese replace Anweisung

$text = preg_replace("/{{([^\}\{]*)}}/i","<div class=\"quote\">$1</div>",$text);
$text = preg_replace("/{{([^\}\{]*)}}/i","<div class=\"quote\">$1</div>",$text);