Forkort links til grund domænet, men kun hvis de er for lange.
Kære Eksperter!Jeg bruger nedenstående til at få links, emails til at linke automatisk på min asp hjemmeside.
Jeg kunne dog godt tænke mig at koden blev modificeret, således at hvis en bruger skriver et langt link (over 45 tegn), så omskriver den koden således at linket kun bliver vist i ”grunddomænet” men stadig linker til den lange smører.
Altså:
www.etellerandet.dk/test/?test=test&test2=test5
Vil så blive udskrevet som:
www.etellerandet.dk – men når man klikker på det, er det den url ovenover man kommer over til.
Jeg er ikke særlig stærk i Reg.Exp. – så en pædagogisk løsning vil være dejligt - jeg har oprettet spørgsmålet under "Reg.Exp." men har ikke fået noget respons, så nu prøver jeg her.
--- --- --- ---
Function makelink(str)
Set objRegExpHTTP1 = New RegExp
objRegExpHTTP1.Global = True
objRegExpHTTP1.IgnoreCase = True
objRegExpHTTP1.Pattern = "(http|ftp|https)(:\/\/[\w]+)(.[\w]+)([\w\-\.,@?^=%&:/~\+#]*[\w\-\@?^=%&/~\+#])?"
strOutput = objRegExpHTTP1.Replace(str, "<a href='$1$2$3$4' target='_blank'>$1$2$3$4</a>")
objRegExpHTTP1.Pattern = "(^|[^\/])(www)(.[\w]+)([\w\-\.,@?^=%&:/~\+#]*[\w\-\@?^=%&/~\+#])?"
strOutput = objRegExpHTTP1.Replace(strOutput, " $1<a href='http://$2$3$4' target='_blank'>$2$3$4</a>")
objRegExpHTTP1.Pattern = "(\S+@{1}\S+\.[a-z][a-z]+\b)"
strOutput = objRegExpHTTP1.Replace(strOutput, "<a href="&chr(34)&"mailto:$1"&chr(34)&">$1</a>")
set objRegExpHTTP1 = Nothing
makelink = strOutput
End Function
--- --- --- ---
