匹配对象方法:group() 与 groups()
当在处理正则表达式的时候,除了正则表达式对象之外,还有另一个对象类型:匹配对象,即是成功调用match()或者search()所返回的对象。
匹配对象有两个主要方法:group() 和 groups() 。
group():要么返回整个匹配对象,要么根据要求返回特定子组;如果group()没有子组要求,返回整个匹配。
实例:
1
2
3
4
5
6
7
8
9
|
#Author:Dylan import re s = "123dyalnABC" print (re.search( "([0-9]*)([a-z]*)([A-Z]*)" ,s).group()) #返回123dyalnABC print (re.search( "([0-9]*)([a-z]*)([A-Z]*)" ,s).group( 0 )) #返回123dyalnABC print (re.search( "([0-9]*)([a-z]*)([A-Z]*)" ,s).group( 1 )) #返回123 print (re.search( "([0-9]*)([a-z]*)([A-Z]*)" ,s).group( 2 )) #返回dylan print (re.search( "([0-9]*)([a-z]*)([A-Z]*)" ,s).group( 3 )) #返回ABC |
由此可以看出,group()是按照特定子组数字---小写字母---大写字母来获取字符串的,
对应关系是group(1)对应正则表达式对象的特定子组1,group(2)对应特定子组2,group(3)对应特定子组3......
一般地,s.group(N)返回正则表达式对象的第N组特定子组。
group(0)同group()一样,对应整个正则表达式对象。
groups():以tuple格式返回所有匹配子组。
原文转自:
https://www.cnblogs.com/dylan123/articles/10584270.html