group([index|id])获取匹配的组,缺省返回组0,也就是全部值
groups() 返回全部的组
groupdict() 返回以组名为key,匹配的内容为values的字典
接上例:
>>> m.groupindex() {'age': '24', 'tel': '88888888', 'name': 'Tom'}
start( [group] ) 获取匹配的组的开始位置
end( [group] ) 获取匹配的组的结束位置
span( [group] ) 获取匹配的组的(开始,结束)位置
expand( template ) 根据一个模版用找到的内容替换模版里的相应位置
这个功能比较有趣,它根据一个模版来用匹配到的内容替换模版中的相应位置,组成一个新的字符串返回。它使用\g<index|name>或 \index 来指示一个组。
接上例
>>> m.expand(r'name is \g<1> , age is \g, tel is \3') 'name is Tom , age is 24 , tel is 88888888'
除了以上这些函数外,Match对象还有些属性
pos 搜索开始的位置参数
endpos 搜索结束的位置参数
这两个是使用findall或match等函数时,传入的参数。在上面这个例子里,我们没有指定开始和结束位置,那么缺省的开始位置就是0,结束位置就是最后。
>>> m.pos 0 >>> m.endpos 19
lastindex 最后匹配的组的序号
>>> m.lastindex 3
lastgroup 最后匹配的组名
>>> m.lastgroup 'tel'
re 产生这个匹配的Pattern对象,可以认为是个逆引用
>>> m.re.pattern '(?P[a-z]+)\\s+(?P \\d+)\\s+(?P \\d+).*'
得到了产生这个匹配的规则
string匹配的目标字符串
>>> m.string 'Tom 24 88888888 <='