[Tutor] RE: problem with re reaching maximum recursions
John Kenyon
John.Kenyon@mail.idrive.com
Thu, 23 Aug 2001 14:45:46 -0700
OK, I've narrowed the problem down a little, and I seem to have found a fix.
It turns out the problem was not with the negative lookback, but with a
later sub that I do. So now I am importing both pre and re, using the latter
for the negative lookback and the former for the sub. Really ugly, but it
seems to work. If there are other ways to do this, I would love to hear
them.
thanks again,
jck
> -----Original Message-----
> From: John Kenyon
> Sent: Thursday, August 23, 2001 2:22 PM
> To: 'tutor@python.org'
> Subject: RE: problem with re reaching maximum recursions
>
> So, immediately after posting this I realized that I could do the search
> line-by-line for the first pass and then stick it all back together for
> the second pass. Ugly and slow, but it should work. Anybody have any other
> ideas?
>
> jck
>
> -----Original Message-----
> From: John Kenyon
> Sent: Thursday, August 23, 2001 2:17 PM
> To: 'tutor@python.org'
> Subject: problem with re reaching maximum recursions
>
> Hello all,
>
>
> Have problem maybe somebody can give me some ideas on. I have a
> script that goes through a bunch of files and strips the comments out of
> them - it looks for '//', checks to see that it is not preceeded by ':'
> and then grabs to the end of the line. A second regex then goes through
> and looks for other forms of comments, i.e., "/**".
>
> The regex I am having a problem with is as follows: slashComment =
> re.compile('(?<!:)\/\/.*(\n)')
>
> The problem is that when it hits too large a file (not sure exactly
> how big) it throws a runtime exception -- "maximum recursion limit
> exceeded."
>
> As far as I can tell in doing a Google search, this is a bug in 2.0
> that did not exist in 1.5. I tried importing pre instead but it seems to
> have a problem with the negative look back (does anybody know if this was
> not a part of the 1.5 implementation?). I have thought about breaking the
> file up into smaller parts, but I am not sure quite how to do that and in
> any case it would be tricky to make sure that it wasn't split across a
> comment. Any ideas about how to approach this problem, maybe a more
> efficient regex?
>
> Thanks in advance,
>
> jck