webForumDet fria alternativet

RegExp och Hämta från DB

ASP

6 svar · 195 visningar · startad av Asa

Medlem sedan dec. 20011 860 inlägg
Frågan#1

Har lite kod där regexp ska byta ut en kod mot en annan men nu vill jag att det som står mellan taggen ska kolla i databasen vilket id den användaren har och skriva ut det i regExptaggen. Hur gör jag?

regExp.Pattern = "\[chip](.*)\[/chip\]" 
Set RS=Conn.Execute("Select * From " & SqlName & "_users Where anvnamn='" & $1 & "'")
strText = regExp.Replace(strText, "<a href=""krypin.asp?id=" & RS("userId") & """>$1</a>")

Denna funkar ej :(

Medlem sedan dec. 20003 887 inlägg
#2

Jag chansar lite grann på något här...

regExp.Pattern = "\[chip[b]\[/b]](.*)\[/chip\]"
strUser = regExp.Replace(strText, "$1")
Set RS = Conn.Execute("SELECT userID FROM " & SqlName & "_users WHERE anvnamn = '" & strUser & "'")

If Not RS.EOF Then
  strText = "<a href=""krypin.asp?id=" & RS("userID") & """>" & strUser & "</a>"
Else
  strText = "<i>Har inget krypin...</i>"
End If

Förhoppningsvis så kan du jobba vidare med detta.

Medlem sedan dec. 20011 860 inlägg
#3

Tackar, ska testa

Medlem sedan dec. 20011 860 inlägg
#4

verkar inte funka nå :/ Den sätter all kod i presentationen om strUser på nå vis.

Medlem sedan dec. 20003 887 inlägg
#5

Vad menar du egentligen med "Den sätter all kod i presentationen om strUser på nå vis"?

Vad innehåller strText? Kan den innehålla många användarnamn eller missuppfattar jag något här?

Medlem sedan dec. 20011 860 inlägg
#6

Jag har mer kod...Dumt av mig å inte visa... All kod utan din.

Function Link(strText)
   strText = Server.HTMLEncode(strText)

   Set regExp = New regexp

   regExp.Global = true
   regExp.IgnoreCase = true

   'regExp.Pattern = "([url]http://[/url]|www)([\S]*)"
   'strText = regExp.Replace(strText,"[url]$1$2[/url]")

   regExp.Pattern = "([url]ftp://[/url])([\S]*)"
   strText = regExp.Replace(strText,"<a href=""$1$2"" target=""_blank"" class=""egen"">$1$2</a>")

   regExp.Pattern = "([\S]*@[\S]*[.se|.com|.nu|.net|.org])"
   strText = regExp.Replace(strText,"<a href=""mailto:$1"" class=""egen"">$1</a>")

   regExp.Pattern = "([.|,|!|?|:|;|)|\|&]]*)</a> "
   strText = regExp.Replace(strText,"</a>$1 ")

   regExp.Pattern = "\[color=(.*?)\]"
   strText = regExp.Replace(strText,"<font color=""$1"">")

   regExp.Pattern = "(\[\/color\])"
   strText = regExp.Replace(strText,"</font>")

   regExp.Pattern = "\[img](.*)\[/img\]" 
   strText = regExp.Replace(strText, "<img src=""$1"" OnLoad=""CheckSize(this);"">")

   regExp.Pattern = "\[(b|/b|i|/i|u|/u|hr|center|/center)\]" 
   strText = regExp.Replace(strText,"<$1>")

   regExp.Pattern = "\[url](.*)\[/url\]" 
   strText = regExp.Replace(strText, "<a href=""$1"" target=""_blank"" class=""egen"">$1</a>")

   regExp.Pattern = "\[url=(.*?)\](.*)\[/url\]" 
   strText = regExp.Replace(strText, "<a href=""$1"" target=""_blank"" class=""egen"">$2</a>")

   strText    = Replace(strText, "http://http://", "http://") 

   strText = Replace(Trim(strText),vbCrLf, "<br>")
   For i = 1 To AntalSmiley
     strText = Replace(Trim(strText),"[smiley_" & i & "]", "<img src=""gfx/emoticons/" & i & ".gif"">")
   Next

   Link = strText 				' Skriver ut texten, uppdelad och fin!
End Function
Medlem sedan dec. 20011 860 inlägg
#7

Nån som vet?

268 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
127 ms — deklarationer (db)
0 ms — hämta statistik (cache)
136 ms — hämta tråd, inlägg och bilagor (db)
129 ms — ändringar (db)