Avatar billede mik789 Nybegynder
04. december 2003 - 12:23 Der er 3 kommentarer og
1 løsning

hjælp til en URL2link funktion

Se ekspempler på: http://www.eksperten.dk/spm/435848

Jeg har kun arbejdet lidt med regex, og har bøvl med at lave en ordentlig URL2link funktion.

Den skal dække både de der begynder "http://" og bare "www.". Den skal også dække mail adresser, og alle skal kunne klare at være sat i paranteser eller at være efterfulgt af punktum eller komma uden at disse tegn bliver del af linket.

Jeg tager udgangspunkt i denne:

$text3 = preg_replace('#(^|[^\"=])(http://|ftp://|mailto:|news:)([^\s<>\(\)\[\]]+)([\)\>\]]?$)#sm',"\\1<a href=\"\\2\\3\" target=\"_blank\">\\2\\3</a>\\4","http://www.eksperten.dk");
echo "$text3<br><br>\n";

den fungerer fint mht paranteser. Men når jeg forsøger at udvide så der tages højde for komma og punktum kan jeg ikke rigtig få det til at lykkes. Desuden er jeg slet ikke kommet dertil hvor der også tages højde for URLs der skrives uden http:// men bare starter med www, samt mailadresser der ikke skrives ud med mailto:

Har nogle her nogle tips, links eller andet der kan hjælpe?

Vil Eksperten dele ud af sin funktion, der jo virker stort set OK, bortset fra mail adresser i parantes (det ER en mangel).
//mik
Avatar billede kapla Nybegynder
04. december 2003 - 12:28 #1
Eksperten bruger Lars' tagster: http://www.ljweb.com/usefulscripts/
Avatar billede mik789 Nybegynder
04. december 2003 - 12:42 #2
kapla0> tak for tippet... har dowloadet og prøver
Avatar billede mik789 Nybegynder
20. december 2003 - 08:05 #3
kapla0> Lars' tagster fungerede fint med et par tilretninger ;-)
Lægger du et svar?
Avatar billede kapla Nybegynder
20. december 2003 - 19:41 #4
:-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester