Is there a maximum length of a regular expression in python?

Roy Smith roy at panix.com
Fri Jan 20 17:47:50 EST 2006


In article <iudAf.15405$Yu.7291 at newssvr27.news.prodigy.net>,
 Bryan Olson <fakeaddress at nowhere.org> wrote:

> Roy Smith wrote:
> >  olekristianvillabo at gmail.com wrote:
> > 
> > 
> >>I have a regular expression that is approximately 100k bytes. (It is
> >>basically a list of all known norwegian postal numbers and the
> >>corresponding place with | in between. I know this is not the intended
> >>use for regular expressions, but it should nonetheless work.
> >>
> >>the pattern is
> >>ur'(N-|NO-)?(5259 HJELLESTAD|4026 STAVANGER|4027 STAVANGER........|8305
> >>SVOLVÆR)'
> >>
> >>The error message I get is:
> >>RuntimeError: internal error in regular expression engine
> > 
> > 
> > I don't know of any stated maximum length, but I'm not at all surprised 
> > this causes the regex compiler to blow up.  This is clearly a case of regex 
> > being the wrong tool for the job.
> 
> Does no one care about an internal error in the regular expression
> engine?

I think the most that could be said here is that it should probably produce 
a better error message.



More information about the Python-list mailing list