分组的一个附加功能是 捕获分组,对应的括号叫做捕获括号。
括号分组的编号规则是从左到右,从一开始。
print re.search(r"(d{4})-(d{2})-(d{2})"),"2010-12-22").gronp(1)
2010
默认认为存在编号为0的分组,全打印。
print re.search(r"(d{4})-(d{2})-(d{2})"),"2010-12-22").gronp(0)
2010-12-22
分组编号取决于括号开始的顺序。
分组可以提取超链接的详细信息。
新手容易弄错的分组结构。
print re.search(r"(d{4})-(d{2})-(d{2})"),"2010-12-22").gronp(1)
2010
print re.search(r"d({4})-(d{2})-(d{2})"),"2010-12-22").gronp(0)
0
在替换中使用分组。
print re.sub(r"(d{4})-(d{2})-(d{2})"), r"1年2月3日", "2010-12-22")
2010年12月22日
反向引用:
用反向引用匹配成对的tag: