urls automatisch in links [php]

Seite 1 von 2 - Forum: Coding Stuff auf overclockers.at

URL: https://www.overclockers.at/coding-stuff/urls_automatisch_in_links_php_71268/page_1 - zur Vollversion wechseln!


Phobos schrieb am 15.03.2003 um 14:55

jo wie funktionert des, wenn ich einen link in ein textfeld eingeb (zb http://www.overclockers.at), dass dieser automatisch in einen link umgewandelt wird?

ohne vb code oder sonstiges ich geb nur die url ein und es wird ein link draus!?

thx 4 hlp
:cool: pHs


Master99 schrieb am 15.03.2003 um 14:58

EDIT: sorry, falsch...


atrox schrieb am 15.03.2003 um 16:21

regular expressions

vor langer langer zeit (1998 oder so) hab ich folgende zwei kryptische perl regular expressions dafür geschrieben:

Code:
#umwandeln von [url]http://....[/url] text in links:
s/(http:\/\/[a-zA-Z\-0-9]{2,}\.[\.a-zA-Z0-9%$\-_\?\&+]{2,}[a-zA-Z0-9\/]{1})/ <a target="_blank" href="\1">\1<\/a>/
#umwandeln von [url]www.domain....[/url] text in links (ohne [url]http://[/url]) nur anwenden, wenn vorherige expr nicht angewendet wurde
s/(www\.[\.a-zA-Z0-9%$\-_\?\&+]{2,}[a-zA-Z0-9\/]{1})/<a target="_blank" href="http:\/\/\1">\1<\/a>/
(würde ich heute vermutlich ein wenig schöner schreiben)


Phobos schrieb am 15.03.2003 um 19:49

jo thx, bringt mir nicht wirklich viel wenn ich php progg :/

aber thx atrox, i luv u :D


atrox schrieb am 15.03.2003 um 20:19

sollte sich leicht auf preg_replace() anpassen lassen


Maehmann schrieb am 15.03.2003 um 21:07

gibts irgendwo ein gescheites tutorial für Reg Expressions?
Hab noch kein zufriedenstellendes gefunden :(


atrox schrieb am 16.03.2003 um 00:16

einen guten pragmatischen einstieg in regular expressions bietet meiner ansicht nach das perl-tutorial-buch von o'reilly.
im web gibt es aber auch eine menge php-bezogener regex-tutorials/primers, allerdings von unterschiedlicher qualität: http://www.google.com/search?hl=en&...G=Google+Search

überlege mir schon die ganze zeit, ob es nicht sinnvoll währe einen sticky-thread mit guten tutorials für alle möglichen programmiersprachen und häufig gestellten probleme anzulegen - anfangs währe diese liste halt noch recht klein und uninteressant, und würde wohl erst mit der zeit wachsen.


schrieb am 16.03.2003 um 10:14

make it so :cool:


Snoop schrieb am 16.03.2003 um 11:02

$content=eregi_replace("([ \r\n])http://([^ ,\r\n]*)","\\1http://\\2",$content);
$content=eregi_replace("([ \r\n])https://([^ ,\r\n]*)","\\1https://\\2",$content);
$content=eregi_replace("([ \r\n])ftp://([^ ,\r\n]*)","\\1ftp://\\2",$content);
$content=eregi_replace("([ \r\n])http://www.([^ ,\r\n]*)","\\1http://www.\\2",$content);
$content=eregi_replace("^http://([^ ,\r\n]*)","http://\\1",$content);
$content=eregi_replace("^https://([^ ,\r\n]*)","https://\\1",$content);
$content=eregi_replace("\\[url\\]www.([^\\[]*)\\[img\\]www.([^\\[]*)\\[/img\\]\\[/url\\]","<a href=\"http://www.\\1\" target=_blank><img src=\"http://www.\\2\" border=\"0\"></a>",$content);
$content=eregi_replace("\\[url\\]http://([^\\[]*)\\[img\\]http://([^\\[]*)\\[/img\\]\\[/url\\]","<a href=\"http://\\1\" target=_blank><img src=\"http://\\2\" border=\"0\"></a>",$content);
$content=eregi_replace("\\[url\\]www.([^\\[]*)\\[/url\\]","<a href=\"http://www.\\1\" target=_blank>\\1</a>",$content);
$content=eregi_replace("\\[url\\]([^\\[]*)\\[/url\\]","<a href=\"\\1\" target=_blank>\\1</a>",$content);
$content=eregi_replace("\\[url=\"","[url=\"",$content);


ich bin ja lieb und poste gleich den code :)


Phobos schrieb am 16.03.2003 um 13:02

na servas, aber thx :)


Snoop schrieb am 16.03.2003 um 14:09

jo war ziemlich lange schreib arbeit :) aber is ja nicht nur der code den ich hab :D


Sticker schrieb am 19.03.2003 um 21:34

Gibts eigentlich einen regulären Ausdruck oder ähnliches das bis zum nächsten Space geht?


watchout schrieb am 19.03.2003 um 23:11

Zitat von Sticker
Gibts eigentlich einen regulären Ausdruck oder ähnliches das bis zum nächsten Space geht?
/^([^\040]*)/

sollte es tun...


Sticker schrieb am 30.03.2003 um 04:16

Weiß net ob das geht, sollte es aber:

/^((https?|ftp):\/\/|(www|ftp)?\.)([^ \r\n\(\)\*\^\$!`\"'\|\[\]\{\};<>]*)/si


watchout schrieb am 30.03.2003 um 09:44

Zitat von Sticker
Weiß net ob das geht, sollte es aber:

/^((https?|ftp):\/\/|(www|ftp)?\.)([^ \r\n\(\)\*\^\$!`\"'\|\[\]\{\};<>]*)/si
für eine url recht unbrauchbar, da urls nicht unbedingt am zeilenanfang stehen müssen ;)
auch das newline tät ich nicht ausschliessen...




overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2026