[Python-ideas] re.compile_lazy - on first use compiled regexes
ezio.melotti at gmail.com
Sat Mar 23 13:04:34 CET 2013
On Sat, Mar 23, 2013 at 12:42 AM, Gregory P. Smith <greg at krypto.org> wrote:
> On Fri, Mar 22, 2013 at 3:31 PM, Ronny Pfannschmidt
> <Ronny.Pfannschmidt at gmx.de> wrote:
>> while reviewing urllib.parse i noticed a pretty ugly pattern
>> many functions had an attached global and in their own code they would
>> compile an regex on first use and assign it to that global
>> its clear that compiling a regex is expensive, so having them be compiled
>> later at first use would be of some benefit
> It isn't expensive to do,
Sometimes it is, see e.g. http://bugs.python.org/issue11454.
> it is expensive to do repeatedly for no reason.
> Thus the use of compiled regexes. Code like this would be better off
> refactored to reference a precompiled global rather than conditionally check
> if it needs compiling every time it is called.
>> but instead of all that reptetive code there should be an alternative to
>> re.compile that waits with compilation for the first use
>> -- Ronny
More information about the Python-ideas