in reply to Re: line by line match on an array of strings
in thread line by line match on an array of strings
> however with a few hundred thousand lines to seach, and an array of a few hundred it is far too slow.
It could be slow because it has to do a lot of work at each end step, which is where optimizing the regex helps.
I think it is slow because your looping is of order (a few hundred thousand) TIMES (a few hundred).
It would be much better if the looping is of order (a few hundred thousand) times a big constant. You might be able to get away with that by 'precompile your regexen' (wonderful phrase) -- or imho more likely if your line can be broken into a small number of tokens, just do a dispatch table on tokens broken out from the line.
--woody
|
|---|