Bara för att prova, istället för @, använd ANSI-koden... Char(64) alltså.
Ex:
rx.Patter = "\s([^\s]*)" & Chr(64) & "([^\s]*)"
strFoo = rx.Replace(strFoo, " <a href=""mailto:$1" & Chr(64) & "$2"">$1" & Chr(64) & "$2</a>")
12 svar · 229 visningar · startad av justine
min kod tycker inte om snabel-a. man kan replace till vilken annan bokstav som helst och det blir "rätt". men det måste ju vara ett @ för att det ska bli helt rätt men då skriver den bara ut:
justine@swipnet.se">href="mailto:justine@swipnet.se">justine@swipnet.se
rx.Pattern = "\s([^\s]*)@([^\s]*)"
strFoo = rx.Replace(strFoo, " <a href=""mailto:$1@$2"">$1@$2</a>")
Bara för att prova, istället för @, använd ANSI-koden... Char(64) alltså.
Ex:
rx.Patter = "\s([^\s]*)" & Chr(64) & "([^\s]*)"
strFoo = rx.Replace(strFoo, " <a href=""mailto:$1" & Chr(64) & "$2"">$1" & Chr(64) & "$2</a>")
har provat...
har även testat att skriva in någon konstig bokstav för att sedan på nästa rad byta ut den mot @. men det blir lika konstigt ändå.
Testa att lägga @ i en egen grupp då...
Eller kolla in denna biten av emissions funktion:
objRxp.Pattern = "(\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+)"
strInString = objRxp.Replace(strInString, "<a href=""mailto" & strDelimiter & ":$1"">$1</a>")
Okej, såhär (grupper):
rx.Pattern = "\s([^\s]*)(@{1})([^\s]*)"
strFoo = rx.Replace(strFoo, " <a href=""mailto:$1$2$3"">$1$2$3</a>")
Läs mer om Regular Expressions: http://www.webeye.nu/default2.asp?que=asp/default.asp&exec=asp/artiklar/asp_11.asp
just det. grupper (lärde mig det i fredags men mindes inte att de hette så)
dock hjälpte inte detta alls. resultatet blir detsamma.
såg det andra inlägget nu och testar det där emissions funktion-grejen (även fast jag, ärligt talat, inte riktigt vet vad jag håller på med längre.)
Testa emissions funktion... den brukar fungera bra...
Function URLify(strInString,strTarget)
Dim strDelimiter,objRxp
strDelimiter = Chr(0)
Set objRxp = New RegExp
objRxp.Global = True
objRxp.IgnoreCase = true
objRxp.Pattern="(\[url=)(.)(.)"
strInString = objRxp.Replace(strInString, "$1$2" & strDelimiter & "$3")
objRxp.Pattern = "(\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+)"
strInString = objRxp.Replace(strInString, "<a href=""mailto" & strDelimiter & ":$1"">$1</a>")
objRxp.Pattern = "(http://|https://|ftp://|mailto:)(\S)(\S+)"
strInString = objRxp.Replace(strInString, "<a target=""" & strTarget & """ href=""$1$2" & strDelimiter & "$3"">$2" & strDelimiter & "$3</a>")
'objRxp.Pattern = "(www\.(\S)(\S+))"
'strInString = objRxp.Replace(strInString, "<a target=""" & strTarget & """ href=""http://$1"">$1</a>")
URLify = Replace(strInString, strDelimiter, "")
End Function
tyvärr...
det går inte alls. jag har gått tillbaka till den andra och tagit bort så ingenting händer med mejladresser för jag vet verkligen inte vad jag ska göra för att det ska fungera.