python之正则表达式

本文介绍了Python正则表达式的应用,包括邮箱地址的筛选、定义字符类、取反、预定义字符串(如匹配数字、非数字、单词字符等)以及量词的使用,通过实例展示了这些概念在实际编程中的运用。
摘要由CSDN通过智能技术生成

1、开始与结束字符

^与$以^开始对字符串的匹配以$为对字符串的匹配结束

先来看一个例子(关于邮箱的筛选)

代码如下

import re

p1 = r'\w+@csdn\.com'
p2 = r'^\w+@csdn\.com$'

exce = "guoduyinyong's emali is chengxian88@csdn.com."

m = re.search(p1, exce)
print(m)

m = re.search(p2, exce)
print(m)
exce_2 = "chengxian88@csdn.com"
m = re.search(p2, exce_2)
print(m)
结果如下:

大家也可以发现不加^$时好像筛选功能更加强大,但当一个格式比较固定的使用^$可能就会有更好的效果

2、定义字符类

import re

p = r'[Ii]ooop'
print(re.search(p,'Iooop'))
print(re.search(p,'IOOOP'))
print(re.search(p,'iooop'))

结果如下:

这里的代码其实说的是取I或者i开头的ooop其他的都不匹配

3、字符类取反

import re

p = r'[^0-9]'
print(re.search(p,'pc00'))
print(re.search(p,'45'))

结果如下:

这里代码是匹配字符串中出现除0~9以外的匹配

4、预定义字符串

字符说明
.匹配任意字符
\\匹配反斜杠\字符
\n匹配换行
\r匹配回车
\f匹配一个换页符
\t匹配一个水平制表符
\v匹配一个垂直制表符
\s匹配一个空格符等价于[\t\n\r\f\y]
\S匹配一个非空格符
\d匹配一个数字字符,等价于[0-9]
\D匹配一个非数字字符,等价于[^0-9]
\w匹配任何语言的单词字符(英文字母,汉字)、数字、下划线、若正则表达式编译标志设置为ASCII,则只匹配[a-zA-Z0-9]
\W等价于[^\w]

5、量词

字符说明
出现0次或1次
*出现0次或者多次
+出现一次或者多次
{n}出现n次
{n,m}出现n次但不超过m次

{n,}

至少出现n次

代码示例

import re

i = re.search(r'\d+', '78391039')
print(i)
结果如下:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

过度引用

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值