a²: Probleme mit RegEx Folge 13: Backreference

Beitrag lesen

Hallo zusammen,

mit der folgenden Funktion war ich letzte Woche schonmal hier hausieren, hatte damals allerdings ein anderes Problem.

Heute geht es um folgendes:

$theText = eregi_replace('(<font [^<]*color=["|']?([^ "']*)["|']?^></font>)','<fillcolor={ cmyk ' . getColorForPDF('\2', 'c') . ' ' . getColorForPDF('\2', 'm') . ' ' . getColorForPDF('\2', 'y') . ' ' . getColorForPDF('\2', 'k') . ' }\3<fillcolor={ ' . $sDefaultTextColor . ' }>', $theText);

An meine Funktion getColorForPDF() wird immer der Wert "2" übergeben statt der RegEx Backreference \2. Die Übergabe bzw. Auswertung von Reference \3 ist aber erfolgreich.
Was paßt bei der 2er nicht?

Danke vorab für Tipps und Grüße

Alex