robotto7831a Geschrieben 15. September 2002 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
Valium Geschrieben 15. September 2002 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
Chaosmaker Geschrieben 16. September 2002 Geschrieben 16. September 2002 $replace = preg_replace("/\[URLS]([^[]*)\[\/URLS]/is","<a href=\"\\1\" target=\"_blank\">\\1</a>",$replace); Das sollte auf jeden Fall gehn.
robotto7831a Geschrieben 17. September 2002 Autor Geschrieben 17. September 2002 OK. Danke. Ich werde es versuchen. Frank
Himon.de Geschrieben 3. November 2003 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
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden