webForumDet fria alternativet
Logga in / Bli medlem

Replace, regexp??

ASP

9 svar · 267 visningar · startad av hammers

Medlem sedan juli 2000112 inlägg
Trådstart#1

Jag har en textsträng som innehåller en e-postadress, plus lite annan information. E-postadressen är alltid i formatet aaa@aaa.se, dvs. namnet är 3 bokstäver, och domänen är 3 bokstäver.

Kan nån ge mig ett tips om hur jag gör e-postadressen till en mailto-länk?

Medlem sedan feb. 200112 078 inlägg
#2

Välkommen till wF, Hammer.

<%
str = "aaa@aaa.com"
str = "<a href=mailto:" & str & ">" & str & "</a>"
response.write str
%>

sådär ungefär, va :)

Medlem sedan feb. 200112 078 inlägg
#3

Nu skrev jag utan att läsa igen.. :)

Jag har en textsträng som innehåller en e-postadress, plus lite annan information.

Vad är det mer för data du har i strängen? Ifall du har det måste du ju använda typ RegExp för att hitta mönstret och plocka ut din e-postadress..
Detta får nog nån av Guru:sarna hjälpa dig med :e

*ropa på vide, emission, @nders och larsG*

Medlem sedan juli 2000112 inlägg
#4

Thanks, but....
problemet är att strängen inte BARA innehåller epostadressen. Den kan t.ex. vara "Vidare information ges av aaa@aaa.se".

E-postadressen kan finnas var som helst i strängen, inte alltid i slutet.
Det "enda" jag vet med säkerhet är att adressen alltid är i formatet aaa@aaa.se

Medlem sedan juni 200032 967 inlägg
#5

jag har ingen aning. jag kan ju inte sånt därnt. men man kan tänka sig att emission har aning, och, kanske ett gammalt emission-script kan hjälpa dig?
http://cgi.webforum.nu/wf/Forum11/HTML/001475.html

mvh,

Medlem sedan jan. 2001510 inlägg
#6

Var det nått sånt här du tänkte dig?

<%

'Text including codes to be converted
strText = "babbel och ccc@qqq.se en massa aaa@bbb.se annat tjolahppsan"

'HTMLencode to get rid of tags
strText = Server.HTMLEncode(strText)

'Creates new regexp
Set objRegExp = New regexp

'Do more than once
objRegExp.Global = true

'Ignore whether upper or lowercase
objRegExp.IgnoreCase = true

'Transform mailadress
objRegExp.Pattern = "\s{1,}(...@...\.se)"
strText = objRegExp.Replace(strText," <a href=""mailto:$1"">$1</a>")

Response.write strText

%>

Obs. Det måste vara mellanslag eller radbrytning innan adressen för att det ska funka.

[r]Glömde mailto :)[/r]

/JANspeed

[Redigerat av Janspeed den 31 aug 2001]

Medlem sedan juli 2000112 inlägg
#7

Hmmm...vad kan det här bero på:

Microsoft VBScript compilation error '800a03ea'

Syntax error

Set objRegExp = New regexp
----------------^

Medlem sedan jan. 2001510 inlägg
#8

Ingen aning. Men det kan ju tänkas att din server inte stödjer RegExp? Du kanske har en för gammal scriptmotor eller nått?

Det funkade finfint för mig i alla fall. Men det hjälper ju inte dig precis. :)

/JANspeed

Medlem sedan juli 2000112 inlägg
#9

Jag snokade runt lite, och det verkar mycket riktigt som det är scriptmotorn som spökar. Ska testa att uppgradera/installera om.

Tack för hjälpen!

Medlem sedan jan. 2001510 inlägg
#10

Nemas problemas. :)

/JANSpeed

266 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
129 ms — deklarationer (db)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)
131 ms — ändringar (db)