webForumDet fria alternativet

Replace-fel

13 svar · 372 visningar · startad av bassebhu

bassebhuMedlem sedan nov. 20016 480 inlägg
#1

Hej!

Har en liten kul funktion. Den ersätter [link]namn[/link] med <a href="medlemmar_info.asp?vem=namn">namn</a>

nu är det bara ett problem. när man skriver flera olika namn strular det. allts t ex.

[link]namn[/link]
[link]namn2[/link]

blir:
<a href="medlemmar_info.asp?vem=namn">namn</a>
<a href="medlemmar_info.asp?vem=namn2">namn</a>

Jag vill att det ska bli:
<a href="medlemmar_info.asp?vem=namn">namn</a>
<a href="medlemmar_info.asp?vem=namn2">namn2</a>

Kommer ikke på hur jag ska lösa det som =/

<% 
function link(strL) 
str= strL 
middas1 = instr(strL,"[link]") 
middas2 = middas1 + 6 
strL = Mid(strL,middas2) 
middas1 = instr(strL, "[/link]") 
middas2 = middas1 - 1 
If middas1 > 1 Then
strL = Left(strL, middas2) 
End if

str = Replace(str, "[link]","<a href=" & chr(34) & "medlemmar_info.asp?vem=") 
str = Replace(str, "[/link]", chr(34) & ">" & strL &"</a>") 
link = trim(str)
end function

%>

HJÄLP! =) tack

mvh: basse

LarsGMedlem sedan dec. 200012 464 inlägg
#2

Du får nog skriva lite regexp för att lösa detta.

dim o,str
set o = new regexp
o.pattern = "\[link\](.*?)\[/link\]"
o.global = true
o.ignorecase = true
str = "[link]namn[/link] [link]namn2[/link] "

response.write o.replace(str,"<a href=""medlemmar_info.asp?vem=$1"">$1</a> ")
bassebhuMedlem sedan nov. 20016 480 inlägg
#3

ok. och på svenska? hehe.

hur gör jag? vad ska bytas ut mot det där? =/

TACK!

pirroMedlem sedan aug. 2001226 inlägg
#4

hela functionen....
alltså hela link mot

function link(str)
dim o
set o = new regexp
o.pattern = "\[link\](.*?)\[/link\]"
o.global = true
o.ignorecase = true

str = o.replace(str,"<a href=""medlemmar_info.asp?vem=$1"">$1</a> ")
end function
bassebhuMedlem sedan nov. 20016 480 inlägg
#5

hmmm.... jag måste göra fel.

med Lars variant byttes allt i mitt recset ut mot
"namn namn2" när jag loopade ut..

med pirros variant fanns där inget innehåll alls när jag loopade ut =/

what to do?

tack

pirroMedlem sedan aug. 2001226 inlägg
#6

NY KOD:

<%function link(str)
dim o
set o = new regexp
o.pattern = "\[link\](.*?)\[/link\]"
o.global = true
o.ignorecase = true

str = o.replace(str,"<a href=""medlemmar_info.asp?vem=$1"">$1</a> ")
link = str
end function%>
bassebhuMedlem sedan nov. 20016 480 inlägg
#7

OK! nu tor ja vi är på rätt väg.

Nu funkar det som det jag skrev först.

MEN fortfarande fel:

---------------------------
[link]namn[/link] [link]namn2[/link]

blir:
<a href="medlemmar_info.asp?vem=namn">namn</a>
<a href="medlemmar_info.asp?vem=namn2">namn</a>

Jag vill att det ska bli:
<a href="medlemmar_info.asp?vem=namn">namn</a>
<a href="medlemmar_info.asp?vem=namn2">namn2</a>
--------------------------

Går det att lösa?

Schysst!!

pirroMedlem sedan aug. 2001226 inlägg
#8

ska se sen

bassebhuMedlem sedan nov. 20016 480 inlägg
#9

ok. schysst.

pirroMedlem sedan aug. 2001226 inlägg
#10

fungerar för mig....

solbulleMedlem sedan mars 20015 287 inlägg
#11

Å för mig. :)

bassebhuMedlem sedan nov. 20016 480 inlägg
#12

ok, tack!!

ni har helt rätt. det var att jag använde den tillsammans med andra replace-funktioner.

men vad kan jag ha gjort fel då då?

Jag har en fil som heter kod.asp där alla replacear finns. sedan inkluderar jag den på sidorna. nu tog jag bort den här repleacen därifrån och lade in den enskilt på alla sidor. det funkade =/

tidigare så blev det antingen bara tomt när man loopade ut eller så blev det sådär att alla fick samma namn.

jaja, nu e det löst iaf. =/

tack =)

pirroMedlem sedan aug. 2001226 inlägg
#13

visa sidan

bassebhuMedlem sedan nov. 20016 480 inlägg
#14

lugnt

men det e fixat nu.

tack!!

134 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)