Ich habe folgenden Code zusammengeschustert, um aus bbCode Links zu machen:
Das klappt so schon recht gut, bis auf die Tatsache, das man immer http:// mit angeben muss.
Ich denke die Problematik ist alt und bekannt.
Mein Lösungsansatz sah so aus, das ich vor dem oben genannten folgendes eingefügt habe:
Soweit meine Gedanken, alledings scheitert dieser Versuch, genauwie alle meine anderen Versuche, daran, das entweder die http:// doppelt angezeigt werden, wenns schon da war, oder garnet kommn.
Daher bitte ich um eure Hilfe.
Vielen Dank,
Thorsten Lanfer
/e: Das Forum frisst meine komplette Escaping-Klamüserei
/e²: Genauso wie es auch die erste Zeile meines Lösungsansatzes frisst, man stelle sie sich analog zur zweiten vor
Code:
$result = preg_replace( "/\[URL=(.*?)\](.*?)\[\/URL\]/is", "<a href=\"$1\" target=\"_blank\">$2</a>", $result); $result = preg_replace( "/\[URL\](.*?)\[\/URL\]/si", "<a href=\"$1\" target=\"_blank\">$1</a>", $result);
Ich denke die Problematik ist alt und bekannt.
Mein Lösungsansatz sah so aus, das ich vor dem oben genannten folgendes eingefügt habe:
Code:
$result = preg_replace( "/\[URL=((?\<!http\:\/\/)(.*?))\](.*?)\[\/URL\]/is", "<a href=\"http://$1\" target=\"_blank\">$2</a>", $result); $result = preg_replace( "/\[URL\]((?<!http\:\/\/)(.*?))\[\/URL\]/si", "<a href=\"$1\" target=\"_blank\">$1</a>", $result);
Daher bitte ich um eure Hilfe.
Vielen Dank,
Thorsten Lanfer
/e: Das Forum frisst meine komplette Escaping-Klamüserei
/e²: Genauso wie es auch die erste Zeile meines Lösungsansatzes frisst, man stelle sie sich analog zur zweiten vor
EDIT:
der Code Tag frisst nichts!
Kommentar