首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python正则表达式元字符,re模块常用函数简介

一、正则表达式元字符

. 匹配除换行符以外的任意字符

[0-9a-zA-Z_] 字符集合,匹配包含的任一个字符,下划线

[^abc] 匹配除abc外的所有字符

\d 匹配所有的数字,相当于[0-9]

\D 匹配非数字字符,相当于[^0-9]

\w 匹配数字字母下划线,相当于[0-9a-zA-Z_]

\W 匹配非数字字母下划线,相当于[^0-9a-zA-Z_]

\s 匹配任意空白符(空格,换行,回车,换页制表符)相当于[ \f\n\r\t]

\S 匹配任意非空白符,相当于[^ \f\n\r\t]

^ 行首匹配

$ 行尾匹配

\A 匹配字符串开始,和^区别:\A只匹配行首,在re.M下也不匹配他行行首

\Z 匹配字符串结束,和$区别:\Z只匹配结束,在re.M下也不匹配他行结束

\b 匹配单词的边界,空格之间

\B 匹配非单词的边界,空格之间

xyz--->假设的普通字符

(xyz) 匹配小括号内的xyz(作为一个整体去匹配)

x? 匹配0个或者1个x(非贪婪匹配)

x* 匹配0个或者任意多个x(贪婪匹配)(.*表示匹配0个或者多个字符,换行符除外)

x+ 匹配至少一个x

x 匹配确定的n个x

x 匹配至少n个x

x 匹配至少n个,最多m个x

x|y |表示或,匹配x或y

*? +? (xyz)? 最小匹配,解决贪婪匹配

?:x 类似(xyz),但不表示一个组

二、Re模块简介

re.match函数

原型:match(pattern, string, flags=0)

参数:

patter:匹配的正则表达式

string:要匹配的字符串

flags:标志位,控制正则表达式的匹配方式

功能:起始位置匹配一个模式,其他位置匹配返回None

re.match('www', 'wWw.baidu.com', flags=re.I)

# 扫描整个字符串,返回从起始位置成功的匹配

re.serch函数

原型:serch(pattern, string, flags=0)

参数:

patter:匹配的正则表达式

string:要匹配的字符串

flags:标志位,控制正则表达式的匹配方式

功能:扫描整个字符串,并返回第一个成功的匹配

eg:re.search('ren', 'good a man ren is nice ren')

re.findall函数

原型:findall(pattern, string, flags=0)

参数:

patter:匹配的正则表达式

string:要匹配的字符串

flags:标志位,控制正则表达式的匹配方式

功能:扫描整个字符串,并返回结果列表

eg:re.findall('ren', 'good a man ren is nice ren')

三、正则表达式修饰符 - 可选标志

re.L 本地化识别

re.I 忽略大小写

re.M 多行匹配,影响^和$

se.S 是.匹配包括换行符在内的所有字符

se.U 根据Unicode字符集解析字符,影响\w \W \b \B

se.X 使我们以更灵活的格式理解正则表达式

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180511G1XQ0Q00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券