Avatar billede tuctoh Nybegynder
17. oktober 2003 - 10:49 Der er 4 kommentarer og
1 løsning

filter med regexp

Jeg har lavet en lille fil som jeg inkluder hvor jeg vil have et filter:

<%
dim filter_words
filter_words = "svin, bengt, høne, æsel, monior"
filter_words = split(filter_words, ",")

function dofilter(str)
dim temp_str
for i = 0 to Ubound(filter_words)
Set regEx = New RegExp               
regEx.Pattern = filter_words(i)
regEx.global = true
regEx.IgnoreCase = true
str = regEx.Replace(str , "*beep*" )
Set regEx = Nothing
next
dofilter = str
end function
%>

der vil i filter_words være omkring 50 forskellige ord. De 5 i ser er bare et eller andet tilfældigt.

Den funktion virker helt perfekt - men kan den optimeres? Den er hurtig at udføre - men kan den bliver endnu hurtigere?


Håber i kan hjælpe mig med om der er performance at hente nogle steder i det.
Avatar billede erikjacobsen Ekspert
17. oktober 2003 - 10:56 #1
Kan du ikke klare det i eet regulært udtryk:

  svin|bengt|høne|æsel|monior
Avatar billede tuctoh Nybegynder
17. oktober 2003 - 11:06 #2
jeg kan da prøve :)
Ændrer lige min streng og ser hvad der sker :D
Avatar billede tuctoh Nybegynder
17. oktober 2003 - 11:11 #3
ok erik - som jeg har sagt før. Når du svarer på mine spørgsmål, så læg et svar med det samme ;) Du ved jo at du har ret :D


Med det gamle script kunne jeg lave ca. 25 sammenligninger i sekundet - nu klarer den omkring de 500.

Tak :)
Avatar billede erikjacobsen Ekspert
17. oktober 2003 - 11:20 #4
nemlig ;)  Men jeg har nu ikke altid ret...
Avatar billede tuctoh Nybegynder
17. oktober 2003 - 11:22 #5
ingen er fuldkommen ;)

endnu engang, tak.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester