"Per Stilling" <stillingper@hotmail.com> skrev i en meddelelse
news:aieag1$e9t$1@sunsite.dk...
> Jeg er stødt på et lille problem i udviklingen af et forum.. Jeg
> kan ikke helt greje hvordan jeg kan bruge replace til automatisk
> at generere et link hvis der bliver skrivet
www.xxx.dk eller
> xxx.dk.. vil i ikke nok hjælpe mig?
Vi antager at du har en variabel der indeholder linket. Den kalder vi link
Så skal du bruge en funktion, der omdanner indholdet til <a
href="linker">linket</a>. Vi kan lige så godt tage emailadresse med, nu vi
er i gang. Den kommer her:
Function makeLinks(strText)
Dim objReg
Set objReg = New RegExp
objReg.Global = True
objReg.IgnoreCase = True
'--- test for ordinary hyperlinks ---
objReg.Pattern =
"(\bhttp\:\/\/)?(\bw{3}\.\S+\.[a-z][a-z]+\b)(\/\S+\b)?(\?\S+\b)?"
strText = objReg.Replace(strText, "<a href=""
http://$2$3$4""
target=""_blank"">$1$2$3$4</a>")
'--- test for e-mail occurences ---
objReg.Pattern = "(\S+@{1}\S+\.[a-z][a-z]+\b)"
strText = objReg.Replace(strText, "<a href=""mailto:$1"">$1</a>")
Set objReg = Nothing
makeLinks = strText
End Function
Denne funktion kalder du sådan:
link = makeLinks(link)
eller hvis du vil lave indholdet af en formular om:
link = makeLinks(request.form("link"))
link indeholder så <a href="
http://www.dr.dk">http://www.dr.dk eller <a
href="mailto:stillingper@hotmail.com">stillingper@hotmail.com</a>, hvis der
er indtastet en emailadresse.
Hvis der er andet indhold i variablen, bliver det ikke ændret
Hilsen
SumSum
---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (
http://www.grisoft.com).
Version: 6.0.380 / Virus Database: 213 - Release Date: 24-07-2002