原文地址:http://www.cnblogs.com/kaituorensheng/archive/2012/08/20/2648209.html
正则表达式中,group()用来提出分组截获的字符串,()用来分组,例如:
a = "123abc456"
print re.search("([0-9]*)([a-z]*)([0-9]*)",a).group(0) #123abc456
print re.search("([0-9]*)([a-z]*)([0-9]*)",a).group(1) #123
print re.search("([0-9]*)([a-z]*)([0-9]*)",a).group(2) #abc
print re.search("([0-9]*)([a-z]*)([0-9]*)",a).group(3) #456
解释:()三组括号分成三组
group() 同group(0)就是把匹配正则表达式的最长字串(贪婪模式)列出来
group(1) 列出第一个,group(2) 列出第二个,group(3) 列出第三个。
没有匹配的字串,re.search()返回None
当然 没有括号的,group(1)肯定不对了。
今日感慨:
得知欣然,失之淡然,争其必然,顺其自然。