> > 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/
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4