robotto7831a Geschrieben 15. September 2002 Teilen Geschrieben 15. September 2002 Hallo zusammen, ich möchte in einem Text nach z.B. [urlS]www.web.de[/urlS] suchen und durch www.web.de ersetzen. Dafür habe ich schon folgendes Skript geschrieben. //URL rausfiltern $hilf = strstr($beitrag_anzeigen,'[URLS]'); $laenge = strlen($hilf); $hilf = substr($hilf, 6, $laenge); $bis = strpos($hilf,"[/URLS]"); $url= substr($hilf, 0, $bis); $replace = "[URLS]".$url; $replace = $replace."[/URLS]"; $replace2 = "<a href='".$url."' target='_blank'>$url</a>"; $beitrag_anzeigen = str_replace($replace,$replace2,$beitrag_anzeigen); [/php] Jetzt habe ich nur das Problem, wenn eine URL mehrmals in einem Text vorkommt, dann ersetzt der nur das erste Vorkommen. Wie kann ich die anderen auch ersetzen. Frank Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Valium Geschrieben 15. September 2002 Teilen Geschrieben 15. September 2002 Auf Deine Art und Weise nur, in dem Du Deine Suche mit Hilfe einer Schleife immer wieder durchlaufen lässt, bis er keine Links mehr findet. Du solltest Dir aber mal http://www.dclp-faq.de/ch/ch-regexp.html anschauen, da sind einige Beispiele in Deine Richtung, mit Regulären Ausdrücken macht das mehr Sinn, geht schneller und ist weniger Code. Müsste dann in etwa so aussehen: $replace = preg_replace("=[URLS](.*)[\\/URLS]=is","<a href='\\\\1' target='_blank'>\\\\1</a>",$replace); [/php] Sorry, nicht getestet und garantiert auch nicht richtig (schon lange nicht mehr gemacht), aber besser als Deine Lösung Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Chaosmaker Geschrieben 16. September 2002 Teilen Geschrieben 16. September 2002 $replace = preg_replace("/\[URLS]([^[]*)\[\/URLS]/is","<a href=\"\\1\" target=\"_blank\">\\1</a>",$replace); Das sollte auf jeden Fall gehn. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
robotto7831a Geschrieben 17. September 2002 Autor Teilen Geschrieben 17. September 2002 OK. Danke. Ich werde es versuchen. Frank Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Himon.de Geschrieben 3. November 2003 Teilen Geschrieben 3. November 2003 Das Script geht übrigends nicht. Sollte dann so aussehen wenn funken soll! PHP]$text = preg_replace("=\(.*)\[\/URL]=is","<a href='\\1' target='_blank'>\\1</a>",$text); gruss Himon Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.