设为首页 加入收藏

TOP

python正则学习
2017-10-09 17:30:49 】 浏览:1551
Tags:python 正则 学习

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

提取文件后缀代码示例:

# URL样式:https://www.cppentry.com/upload_files/article/77/1_l1zuv__.jpg
pic_type = re.search(r'[^\.]\w*$', pic_url).group(0)

# URL样式:https://img12.360buyimg.com/jrpmobile/jfs/t4300/7/1201145185/119287/2ce425d7/58bec2dfNd95a3522.jpg?width=1080&height=480
pictype = re.search(r'[^\.]\w*\?', pic_url).group(0)
pictype = pictype.split('?')[0]

提取文件名(id)示例:

# URL样式:http://news.sina.com.cn/o/2017-03-12/doc-ifychihc6279025.shtml
id = re.search('doc-i(.*).shtml',url).group(1)

  

 

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Python 3中字符串可以被改变吗? 下一篇pylot压力测试工具

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目