Har denna kod för att räkna ut antal tecken i genomsnitt:
Set uRS = Connect.Execute("select avg(char_length(meddelande)) as averageLength from forum where skribent = '"&username&"'")
Response.Write Round(uRS("averageLength"),1)
Men jag vill att den inte ska räkna alla tecken som finns mellan [ CITAT] och [ /CITAT] och den ska inte heller räkna orden [ CITAT] och [ /CITAT]
Set uRS = Connect.Execute("select meddelande from forum where skribent = '"&username&"'")
set o = new regexp
o.ignorecase = true
o.global = true
o.pattern = "\[CITAT\].*?\[\/CITAT\]"
l = 0
c = 0
while not rs.eof
l = l + len(o.replace(rs("meddelande"),""))
c = c + 1
rs.movenext
wend
if c <> 0 then avg = cdbl(len)/cdbl(c) else avg = 0
Ungefär så. Jag har inte testat. Du kan ju titta lite på andra inlägg om regexp. Jag har för mig att jag sett ett inlägg där någon ville ta bort just CITAT från en text.
Set uRS = Connect.Execute("select meddelande from forum where skribent = '"&username&"'")
set o = new regexp
o.ignorecase = true
o.global = true
o.pattern = "\[CITAT\].*?\[\/CITAT\]"
l = 0
c = 0
while not uRS.eof
l = l + len(o.replace(uRS("meddelande"),""))
c = c + 1
uRS.movenext
wend
if c <> 0 then avg = cdbl(len)/cdbl(c) else avg = 0
set uRS = nothing
set o = nothing
Men får:
Fel antal argument eller felaktig egenskapstilldelning.: 'Len'
Testade då med char_length men det funkade inte heller. Använder MySQL-databas