[Python-Dev] SRE 0.9.8 benchmarks

M.-A. Lemburg mal@lemburg.com
2000年8月03日 11:17:46 +0200


>> searching for literal text:
>> searching for "spam" in a string padded with "spaz" (1000 bytes on
> each side of the target):
>> string.find 0.112 ms
> sre8.search 0.059
> pre.search 0.122
>> unicode.find 0.130
> sre16.search 0.065
>> (yes, regular expressions can run faster than optimized C code -- as
> long as we don't take compilation time into account ;-)
>> same test, without any false matches:
>> string.find 0.035 ms
> sre8.search 0.050
> pre.search 0.116
>> unicode.find 0.031
> sre16.search 0.055

Those results are probably due to the fact that string.find
does a brute force search. If it would do a last match char
first search or even Boyer-Moore (this only pays off for long
search targets) then it should be a lot faster than [s|p]re.
Just for compares: would you mind running the search 
routines in mxTextTools on the same machine ?
import TextTools
TextTools.find(text, what)
-- 
Marc-Andre Lemburg
______________________________________________________________________
Business: http://www.lemburg.com/
Python Pages: http://www.lemburg.com/python/

AltStyle によって変換されたページ (->オリジナル) /