Ich habe folgenden Code um URls klickbar zu machen. Nach gestriger Hilfe, klappt es wunderbar. Jetzt habe ich aber noch eine Möglichkeit, die ich nutzen möchte. Wenn in einem Text die Protokollangabe http:// fehlt möchte ich diese im Fall der Angabe www.webseite.de anfügen lassen. Dies sollte natürlich nicht in dem Fall http://www.webseite.de passieren, dass dann http://http://www.webseite.de entsteht. Ich komme beim Erstellen des Pattern nicht klar.
1. Wie kann ich das umsetzen?
2. Gibt es ein gutes Tutorial für Reguläre Ausdrücke? Hier habe ich schon einiges gefunden, aber ich komme damit noch nicht so richtig klar.
1. Wie kann ich das umsetzen?
2. Gibt es ein gutes Tutorial für Reguläre Ausdrücke? Hier habe ich schon einiges gefunden, aber ich komme damit noch nicht so richtig klar.
Code:
//URls erkennen und clickbar machen / URls kuerzen function make_clickable($str) { global $mumConf; $pattern = '#(^|[^\"=]{1})(http://|https://|ftp://|mailto:|news:)([^\s<>]+)([\s\n<>]|$)#m'; $str = preg_replace($pattern,"\\1<a href=\"\\2\\3\" target=\"_blank\"> ".'\\2\\3'." </a><a href=\"\\2\\3\" target=\"_blank\"> ".$mumConf['marker_link_Pkt'].$mumConf['marker_link']." </a>\\4",$str); $pattern = $pattern.'e'; return preg_replace($pattern,"substr('\\0',0,30)",$str); }
Kommentar