Martin v. Löwis wrote: > Fredrik Lundh schrieb: >>>> match groups are numbered 1..N, not 0..(N-1), in both the API and in the >>>> RE syntax (and we don't have much control over the latter). >>> py> m = re.match("a(b)","ab") >>> py> m.group(0) >>> 'ab' >>> py> m.group(1) >>> 'b' >> 0 isn't a group, it's an alias for the full match. > > So what is the proper term for the things that the .group() method > returns? According to > > http://docs.python.org/lib/match-objects.html > > it returns "subgroups of the match". > > So the things to be indexed in this proposal are subgroups of the > match. > Precisely. But your example had only one group "(b)" in it, which is retrieved using m.group(1). So the subgroups are numbered starting from 1 and subgroup 0 is a special case which returns the whole match. I know what the Zen says about special cases, but in this case the rules were apparently broken with impunity. regards Steve -- Steve Holden +44 150 684 7255 +1 800 494 3119 Holden Web LLC/Ltd http://www.holdenweb.com Skype: holdenweb http://holdenweb.blogspot.com Recent Ramblings http://del.icio.us/steve.holden
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4