[:alnum:],[:space:] und [:alpha:]
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
ahnung
alpha
ausdruck
benutzen
ersten string
fan
frage
ftp
gefundene string
hallen
http
klasse
standard
string
tab
target
text
umsetzung
url
verweis
-
Hall?le!
Also ich habe mal eine Frage zu den in der ?berschrift genannten PHP platzhaltern:
wie benutzt man diese?
und vor allem, wie kann man einen solchen wert durch ereg_replace dann benutzen, dass man dann z.B. mit \0 den im ersten String herausgefilterten string bekommt.
verwirrend was ich schreib?
$msg = ereg_replace("[[:alpha:]]+://[^<>[:space:]]+[[:alnum:]/]","<a href=\"\\0\" target=\"_blank\">\\0</a>", $msg);
$msg = ereg_replace("www.[^<>[:space:]]+[[:alnum:]/]", "<a href=\"http://\\0\" target=\"_blank\">\\0</a>", $msg);
so etwas.
ich hab diese URL umsetzung von de.php.net, hab aber keine Ahnung, wie man des benutzt :(
Gr??e
Pletscher -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
-> Also ich habe mal eine Frage zu den in der ?berschrift
-> genannten PHP platzhaltern:
-> wie benutzt man diese?
-> und vor allem, wie kann man einen solchen wert durch
-> ereg_replace dann benutzen, dass man dann z.B. mit \0 den
-> im ersten String herausgefilterten string bekommt.
-> verwirrend was ich schreib?
-> $msg =
-> ereg_replace("[[:alpha:]]+://[^<>[:space:]]+[[:alnum:]/]","<a
-> href=\"\\0\" target=\"_blank\">\\0</a>", $msg);
-> $msg = ereg_replace("www.[^<>[:space:]]+[[:alnum:]/]", "<a
-> href=\"http://\\0\" target=\"_blank\">\\0</a>", $msg);
-> so etwas.
-> ich hab diese URL umsetzung von de.php.net, hab aber keine
-> Ahnung, wie man des benutzt :(
Also ich als Perl-Fan benutze ja lieber preg_...
Die Character-Klassen [xxx] sind POSIX-Standard:
[:space:] sind das, was Perl unter \s kennt: Leerzeichen, TAB, FF CR LF ..
[:alnum:] kennt Perl als \w: [a-zA-Z0-9]
[:alpha:] sind [a-zA-Z]
Der Ausdruck
ereg_replace("[[:alpha:]]+://[^<>[:space:]]+[[:alnum:]/]","<a href=\"\\0\" target=\"_blank\">\\0</a>", $msg)
wandelt also so was wie html://meine.Url.de/x.y in einen HTML-Verweis um.
\0 ist der durch den Ausdruck gefundene String, der 2 mal verwendet wird, n?mlich im Verweis (href="...") und im Text.
Also mir kommt der Suchausdruck "spanisch" vor:
[[:alpha:]]+:// ist klar: eine reine Buchstabenfolge, gefolgt von ://. Damit findet man ftp:// oder http:
[^<>[:space:]]+[[:alnum:]/] findet eine Zeichenfolge, die aus nicht Spaces (siehe oben) bzw. nicht aus '<' oder '>' besteht und mit einem / bzw. einem alphanumerischen Zeichen endet.
Alles klar?
mfg
Matoba -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage