python group()
正则表达式中,group()用来提出分组截获的字符串 ,()用来分组
import re 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 究其因1. 正则表达式中的三组括号把匹配结果分成三组
group() 同group(0)就是匹配正则表达式整体结果 group(1) 列出第一个括号匹配部分,group(2) 列出第二个括号匹配部分,group(3) 列出第三个括号匹配部分。2. 没有匹 配成功的,re.search()返回None
3. 当然正则表达式中没有括号,group(1)肯定不对了。
本文备注:首次发博,copy仅供自学用。
原文链接:http://www.cnblogs.com/kaituorensheng/archive/2012/08/20/2648209.html
正则表达式截取URL文件名及后缀名例:/upload/activity/xueba/20161025/091909_ce15d6bf-1089-4002-9ff6-016e13e420e5.gif
1,获取图片名称
正则表达式:[^\/\\]+$匹配结果:091909_ce15d6bf-1089-4002-9ff6-016e13e420e5.gif
2,获取后缀
正则表达式:[^\.]\w*$匹配结果:gif
pic_type = re.search(r'[^\.]\w*$', pic_url).group(0)