.... funkar inte tillsammmans med tex en annan funktion som byter ut vbcrlf mot tex radbrytning i HTML eller nytt stycke eller hur man nu fill formatera upp texten på för sätt.
du har ingen lösning på det? för själv e jag ej hemma på detta med RegExp .... än. Kanske en vacker dag =P
Aha, funktionen ser ut så här nu:
Function GetUrl(ByVal strText)
Dim mDelimit
Dim re
mDelimit = Chr(0)
Set re = New RegExp
re.Global = True
re.IgnoreCase = true
re.Pattern = "(\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+)"
strText = re.Replace(strText, "<a href=""mailto" & mDelimit & ":$1"">$1</a>")
re.Pattern = "(http://|https://|ftp://|mailto:)(\S)(\S+)"
strText = re.Replace(strText, "<a href=""$1$2" & mDelimit & "$3"">$2" & mDelimit & "$3</a>")
re.Pattern = "(www\.(\S)(\S+))"
strText = re.Replace(strText, "<a href=""http://$1"">$1</a>")
strText = Replace(strText, mDelimit, "")
Response.Write strText
End Function
Nog finns det en och annan liten bugg, men det ska absolut inte vara något problem att kombinera detta med andra funktioner. Dock har du den inte skriven som en funktion nu, utan som en sub, vilket gör det lite oflexibelt.
Function GetUrl(ByVal strText)
Dim mDelimit
Dim re
mDelimit = Chr(0)
Set re = New RegExp
re.Global = True
re.IgnoreCase = true
re.Pattern = "(\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+)"
strText = re.Replace(strText, "<a href=""mailto" & mDelimit & ":$1"">$1</a>")
re.Pattern = "(http://|https://|ftp://|mailto:)(\S)(\S+)"
strText = re.Replace(strText, "<a href=""$1$2" & mDelimit & "$3"">$2" & mDelimit & "$3</a>")
re.Pattern = "(www\.(\S)(\S+))"
strText = re.Replace(strText, "<a href=""http://$1"">$1</a>")
strText = Replace(strText, mDelimit, "")
GetUrl=strText
End Function
------------------
Gunnar Liljas - webbutvecklare
Leon Reklambyrå AB
Det kan vara att du byter till <br> innan du kör denna funktion. Länkarna matchas hela vägen från http:// till nästa mellanslag, nyrad el. dyl. Då kan det bli lite konstigt om man tar bort alla vbcrlf. Lätt att fixa, i regexp:en, om man så vill.
------------------
Gunnar Liljas - webbutvecklare
Leon Reklambyrå AB