webForumDet fria alternativet
Logga in / Bli medlem

Replace

ASP

7 svar · 180 visningar · startad av Crimz0n

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

Jag har ett forum där man ska kunna använda lite olika "special-taggar". För att uppnå det använder jag "Replace(text, "[kod]", "<b>")...

Nu till mitt problem; jag vill att man ska kunna länka till andra användare via dessa taggar t.ex. [Länka]Pelle[/Länka] men hur ska man lyckas med det?

Det borde ju vara nåt i stil med att [Länka] ersätts med <a href="sida.asp?vem= och [/Länka] ersätts med "></a>. Men hur ska jag då få namnet att synas mellan <a>-taggarna...

Hoppas att ni förstod nåt av mitt babblande...

Tack på förhand!

Medlem sedan dec. 19996 721 inlägg
#2
set objRxp=new RegExp
objRxp.Global=True
objRxp.IgnoreCase=True
objRxp.Pattern="\[länka\](.+?)\[/länka\]"
for each match in objRxp.Execute(strText)
	strText=replace(strText,match.value,"<a href=""sida.asp?vem=" & server.urlencode(match.submatches(0)) & """>" & match.submatches(0) & "</a>")
next
Medlem sedan juli 200133 inlägg
#3

Tack!

En sista fråga bara; om jag t.ex. vill att "<länka>" ska ersättas av en tag och "<Fet>" av en annan hur gör jag då. Måste jag göra en ny funktion för varje tag jag vill byta lr

Medlem sedan juli 20003 825 inlägg
#4

Regular expressions? Var läser man bra texter hur dom fungerar?

Medlem sedan juli 200133 inlägg
Medlem sedan dec. 19996 721 inlägg
#6

Mja, man måste byta Pattern, och göra flera ersättningar.

Anledningen till den något kryptiska ersättningen i mitt exempel är att man måste komma åt server.urlencode, för att URL:en inte ska bli knasig. För enklare grejer passar det bättre med RegExp:ens Replace-metod.

Medlem sedan juni 20019 024 inlägg
#7

emission, hur kunde du? ;)

Välkommen Crimz0n!

Medlem sedan juli 200133 inlägg
#8

Tack så mycket!

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