Matchobject
instances support the following methods and attributes:
None
.
If the regular expression uses the (?P<name>...)
syntax,
the index arguments may also be strings identifying groups by
their group name.
A moderately complicated example:
m = re.match(r"(?P<int>\d+)\.(\d*)", '3.14')After performing this match,
m.group(1)
is '3'
, as is m.group('int')
.
m.group(2)
is '14'
.
None
. If the tuple
would only be one element long, a string will be returned instead.
None
if group exists but
did not contribute to the match. For a match object
m
, and a group g
that did contribute to the match, the
substring matched by group g
(equivalent to m.group(g)
) is
m.string[m.start(g):m.end(g)]Note that
m.start(group)
will equal m.end(group)
if
group matched a null string. For example, after m =
re.search('b(c?)', 'cba')
, m.start(0)
is 1, m.end(0)
is
2, m.start(1)
and m.end(1)
are both 2, and
m.start(2)
raises an IndexError
exception.
(start(group), end(group))
.
Note that if group did not contribute to the match, this is
(None, None)
.
search
or match
function. This is the index into the
string at which the regex engine started looking for a match.
search
or match
function. This is the index into the
string beyond which the regex engine will not go.
match()
or search()
method
produced this MatchObject
instance.
match()
or search()
.
See Also:
Jeffrey Friedl, Mastering Regular Expressions, O'Reilly. The Python material in this book dates from before the re module, but it covers writing good regular expression patterns in great detail.
guido@CNRI.Reston.Va.US