Bytecounter: Ersetzen, nur wenn Vorkommen in Folge = 1

Beitrag lesen

Hallo,
ich habe ein kleines Problem mit ereg_replace(). Hier das Beispiel:

$str = "*a#*b#*b#*b#*a#*b#*a#";

echo ereg_replace ( '(\*b#){1,1}', "+", $str );

Es soll nun *b# nur ersetzt werden, wenn es max. einmal in Folge vorkommt. In dem Beispiel also nur der letzte Treffer. Die ersten drei Treffer folgen direkt hintereinander und dürfen nicht ersetzt werden. Die Vorkommen sind aber willkürlich, so dass ich nicht mit Anfang- und Ende-"Geschichten" arbeiten kann.
Der max-Quantifier zeigt nicht die erwünschte Wirkung. Kennt hier jemand einen Trick, sitz ich auf der Leitung oder muss ich tatsächlich eine eigene Funktion schreiben?

Danke für Eure Hilfe!
Bytecounter
Beitrag bearbeiten/löschen