BB-Code Regular expressions
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
ansatz
beispiel
beschreibung
code
dank
gesichert gruss
hilfe
hilfreichen hinweis
http
info
kleine frage
kleiner fehler
problem
url
verbessert danke
wandel
-
Hallo,
Heute mal wieder eine kleine Frage von mir:
wenn ich als bb code folgendes habe:
[url]http://lima-city.de[/url]
oder:
[url=http://lima-city.de]Webspace[/url]
Wie wandel ich das jetzt mit PHP in<a href="http://www.lima-city.de>http://www.lima-city.de</a>
um?
CIh weiss dass ich das irgendwie mit regular expressions machen muss..
Hab auch schon einen Ansatz, der aber irgendwie nicht funktioniert -_-
$description = preg_replace('(\[url\].*?\[/url\])|(\[url=.*\](.*?)\[/url\])',$description);
Danke für eure Hilfe..
EDIT**
Habe das Problem nun doch selbst gelöst..
Für alle die es interessiert:
$description = preg_replace("/\[url=([-+_\.\/a-zA-Z0-9!&%#?,'=:~\[\]@ ]*?)\]([-+_\.\/a-zA-Z0-9!&%#?,'=:~\[\]@ ]*?)\[\/url\]/i", "<a href=\"$1\">$2</a>", $description); $description = preg_replace("/\[url\]([-+_\.\/a-zA-Z0-9!&%#?,'=:~\[\]@ ]*?)\[\/url\]/i", "<a href=\"$1\">$1</a>", $description);
(diese Variante ist sogar gegen XSS gesichert :-)
Gruss, Paddy
Beitrag zuletzt geändert: 18.9.2012 3:18:14 von paddy-herrmy -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
hcms schrieb:
sehe ich das richtig das du auch leerzeichen innerhalb der url erlaubst ?
Sieht für mich auch so aus... Das sollte so aber nicht sein, oder? Bei der Beschreibung, also hier im Beispiel $2
paddy-herrmy schrieb:
$description = preg_replace("/\[url=([-+_\.\/a-zA-Z0-9!&%#?,'=:~\[\]@ ]*?)\]([-+_\.\/a-zA-Z0-9!&%#?,'=:~\[\]@ ]*?)\[\/url\]/i", "<a href=\"$1\">$2</a>", $description);
sollte das Leerzeichen erlaubt sein, sonst eigentlich nicht, oder vertue ich mich da? -
hcms schrieb:
sehe ich das richtig das du auch leerzeichen innerhalb der url erlaubst ?
thwbm schrieb:
Sieht für mich auch so aus... Das sollte so aber nicht sein, oder? Bei der Beschreibung, also hier im Beispiel $2
sollte das Leerzeichen erlaubt sein, sonst eigentlich nicht, oder vertue ich mich da?
Ihr habt natürlich völlig recht, da hat sich ein kleiner Fehler eingeschlichen habs jetzt verbessert.
Danke für den HH (Hilfreichen Hinweis)
Gruss, PAddy -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage