Brian D wrote: > Here's a simple named group matching pattern: > >>>> s = "1,2,3" >>>> p = re.compile(r"(?P<one>\d),(?P<two>\d),(?P<three>\d)") >>>> m = re.match(p, s) >>>> m > <_sre.SRE_Match object at 0x011BE610> >>>> print m.groups() > ('1', '2', '3') > > Is it possible to call the group names, so that I can iterate over > them? > > The result I'm looking for would be: > > ('one', 'two', 'three')
>>> s = "1,2,3" >>> p = re.compile(r"(?P<one>\d),(?P<two>\d),(?P<three>\d)") >>> m = re.match(p, s) >>> dir(m) ['__copy__', '__deepcopy__', 'end', 'expand', 'group', 'groupdict', 'groups', 'span', 'start'] >>> m.groupdict().keys() ['one', 'three', 'two'] >>> sorted(m.groupdict(), key=m.span) ['one', 'two', 'three'] Peter -- http://mail.python.org/mailman/listinfo/python-list