Is it bug or feature in sre?
Roman Suzi
rnd at onego.ru
Mon Jan 5 07:19:24 EST 2004
On Mon, 5 Jan 2004, Skip Montanaro wrote:
>
> >>> re.compile("(?P<gr>[A-Z]*)?")
> Roman> Traceback (most recent call last):
> ...
> Roman> sre_constants.error: nothing to repeat
>
> Roman> I wonder why I can't do this?
>
> Is there some reason why
>
> "(?P<gr>[A-Z]*)"
- I want it to be optional, so this is not what I wanted
> or
>
> "(?P<gr>[A-Z]+)?"
- this is right thing
> isn't sufficient? You specified the zero-or-more repetition inside the
> group. There's nothing else to have zero-or-one of.
>
>
> Roman> I guess it's of terrible style, but is this behaviour intentional
> Roman> or not?
>
> I suspect it's intentional, since Fredrik went to the trouble of raising an
> exception with a useful error message. <wink>
And I fully agree with it.
> Roman> Probably it is good idea to mention this in Python update path
> Roman> documents. Otherwise some old programs will mysteriously fail.
>
> What were you converting from, an older version of sre, pre, regex, or
> (shudder) regexp?
Python 1.5.2
re
> Skip
More information about the Python-list
mailing list