vad är det för fel på @?

ASP

12 svar · 229 visningar · startad av justine

Medlem sedan maj 200167 inlägg
Trådstart#1

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>")
Medlem sedan mars 20007 896 inlägg
#2

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>")
Medlem sedan maj 200167 inlägg
#3

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å.

Medlem sedan dec. 19998 577 inlägg
#4

Testa:

rx.Pattern = "\s([^\s]*)@{1}([^\s]*)"

Medlem sedan maj 200167 inlägg
#5

tyvärr. det är nog inte i pattern som den krånglar utan i replace-grejen.

ska jag ge upp?

Medlem sedan dec. 19998 577 inlägg
#6

Testa att lägga @ i en egen grupp då...

Medlem sedan dec. 19998 577 inlägg
#7

Eller kolla in denna biten av emissions funktion:

objRxp.Pattern = "(\w+((-\w+)&#0124;(\.\w+))*\@[A-Za-z0-9]+((\.&#0124;-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+)"
strInString = objRxp.Replace(strInString, "<a href=""mailto" & strDelimiter & ":$1"">$1</a>")
Medlem sedan maj 200167 inlägg
#8

visst det kan jag testa. om jag bara visste hur man gör...

(jag är asp-nybörjare ju.)

Medlem sedan dec. 19998 577 inlägg
#9

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

Medlem sedan maj 200167 inlägg
#10

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.

Medlem sedan maj 200167 inlägg
#11

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.)

Medlem sedan dec. 19998 577 inlägg
#12

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+)&#0124;(\.\w+))*\@[A-Za-z0-9]+((\.&#0124;-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+)"
strInString = objRxp.Replace(strInString, "<a href=""mailto" & strDelimiter & ":$1"">$1</a>")
objRxp.Pattern = "(http://&#0124;https://&#0124;ftp://&#0124;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
Medlem sedan maj 200167 inlägg
#13

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.

252 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
118 ms — deklarationer (db)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)
122 ms — ändringar (db)