Python 正则表达式


常见的通用字符及其含义

符号

含义

\w

匹配任意一个字母、数字或下划线

\W

匹配除字母、数字和下划线以外的任意一个字符

\d

匹配任意一个十进制数

\D

匹配除十进制数以外的任意一个其他字符

\s

匹配任意一个空白字符

\S

匹配除空白字符以外的任意一个其他字符

 

常见的元字符及其含义

符号

含义

.

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

^

匹配字符串的开始位置

$

匹配字符串的结束位置

*

匹配0次、1次或多次前面的原子

?

匹配0次或1次前面的原子

+

区配1次或多次前面的原子

{n}

前面的原子恰好出现n次

{n,}

前面的原子至少出现n次

{n,m}

前面的原子至少出现n次,至多出现m次

|

模式选择符: a|b 匹配a或b

()

模式单元符

[…]

用来表示一组字符,单独列出:[amk]匹配’a’, ‘m’ 或 ‘k’

[^…]

不在[]中的字符:[^abc]匹配除了a,b,c之外的字符

(?#...)

注释

 

常见的模式修正符及其含义

符号

含义

re.I

匹配时忽略大小写

re.M

多行匹配,影响 ^ 和 $

re.L

做本地化识别匹配

re.U

根据Unicode字符集解析字符

re.S

使 . 匹配包括换行符在内的所有字符


常见的正则表达式应用:

1>匹配 .com 或 .cn 后缀的 URL 网址

pattern = "[a-zA-Z]+://[^\s]*[.com|.cn]"
2>匹配电话号码

pattern = "\d{4}-\d{7}|\d{3}-\d{8}"

3>匹配 电子邮件地址

pattern = "\w+([.+-]\w+)*@\w+([.-]\w+)*\.\w+([.-]\w+)*"


等等……

通过 result = re.search(pattern, string)  或者 result = re.compile(pattern).findall(string) 来获取匹配结果。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值