]> granicus.if.org Git - python/commit
Applied patch #725106, by Greg Chapman, fixing capturing groups
authorGustavo Niemeyer <gustavo@niemeyer.net>
Sun, 27 Apr 2003 12:34:14 +0000 (12:34 +0000)
committerGustavo Niemeyer <gustavo@niemeyer.net>
Sun, 27 Apr 2003 12:34:14 +0000 (12:34 +0000)
commitc34f2555bd414254f941d0659ba9c229b96ec728
tree7c7a681087d14a07eecae1aa2d870e3dd44af452
parent9dcbbea87867f38f7994dd96388266114ef0c162
Applied patch #725106, by Greg Chapman, fixing capturing groups
within repeats of alternatives. The only change to the original
patch was to convert the tests to the new test_re.py file.

This patch fixes cases like:

>>> re.match('((a)|b)*', 'abc').groups()
('b', '')

Which is wrong (it's impossible to match the empty string),
and incompatible with other regex systems, like the following
examples show:

% perl -e '"abc" =~ /^((a)|b)*/; print "$1 $2\n";'
b a

% echo "abc" | sed -r -e "s/^((a)|b)*/\1 \2|/"
b a|c
Lib/test/test_re.py
Modules/_sre.c