Prob mit regulärem Ausdruck

Kopfballstar

Erfahrenes Mitglied
Hallo,

die Funktion preg_replace funktioniert scheinbar nicht. Ich werde allerdings nicht schlau draus. Könnt ihr da einen Fehler sehen?
Code:
$content = preg_replace("!http://www.".$SERVER_NAME."[\w\/]+?".$von[$i]."!", $zu[$i], $content);
$content = preg_replace("!http://".$SERVER_NAME."[\w\/]+?".$von[$i]."!", $zu[$i], $content);
 
Was genau funktioniert denn nicht? Wie sehen denn typische Werte dazu aus? Hast du es schon mal mit der Variabel $_SERVER['SERVER_NAME'] statt $SERVER_NAME probiert? Möglicherweise solltest du die Werte auch zuerst für den Einsatz im regulären Ausdruck vorbereiten (siehe preg_quote()-Funktion).
 
Es ist so das es sich um ein CMS handelt. Setzt man einen Link verweisst dieser im CMS natürlich auf den CMS Bereich, im Ausgabe BEreich muss das natürlich geändert angezeigt werden. Die Funktion soll also quasi "intern" mit "extern" austauschen. Das funktioniert aber nicht.
 
Zurück