python的正则表达式和re模块详解
短信预约 -IT技能 免费直播动态提醒
一、正则表达式基础
二、python re模块
注意:正则表达式 != re
eg:
注意:如果返回的是对象,则需要使用group分组。
三、进阶
1、分组,使用()即可
028-888888
tel_num = "028-888888"
pattern_obj = re.compile("(\d{3})-(\d{6})")
res = re.match(pattern=pattern_obj, string=tel_num)
print("output: %s %s" % (res.group(1), res.group(2)))
output: 028 888888
2、使用分组时,还可以使用“或者”条件
muilt_types = """image.jpg
image.jpeg
image.png
image.gif"""
pattern_obj = re.compile("(.jpg|.gif|.jpeg|.png)")
types = re.findall(pattern=pattern_obj, string=muilt_types)
print("output: {}".format(types ))
output: ['.jpg', '.jpeg', '.png', '.gif']
3、非捕获分组,(?:表达式) 从而捕获数据,还能进行分组功能
muilt_nums = """028-75855
01-75855
12345-75855
tel:75855"""
pattern_obj = re.compile("(?:\d{2}|\d{5}|tel)[\-:](\d{5})")
nums = re.findall(pattern=pattern_obj, string=muilt_nums)
print("output: {}".format(nums))
output: ['75855', '75855', '75855', '75855']
4、使用分组提取年月日
总结
本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注编程网的更多内容!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341