热线电话:13121318867

登录
2019-03-15 阅读量: 756
Python3之正则表达式怎么写?

一、平台

windows7、python3.7

二、目标

了解python3正则表达式re的三个方法的用法

三、示例和结果如下


import re

a = 'abc1d2ef3y'

b = '3721a3690'

resultA = re.match('[0-9]', a)

print(resultA)

# #打印结果是None,就是没有匹配到,为什么没有匹配到呢,a中明明包含的有数字啊,因为match是从字符串的第一个字符开始匹配

# #而a这第一个字符是a,是个字母,不是0到9的任意一个数值,所以没有匹配到,返回结果是None

resultB = re.match('[0-9]', b)

print(resultB)

# #打印结果是<re.Match object; span=(0, 1), match='3'>,匹配结果是3,位置是从0开始到第1个分片截取的数值就是3。

'''

如何拿到match匹配到的结果?

'''

if resultB:

print("正则表达是match匹配到的结果是:", resultB.group())

# #输出结果是3。 为什么要判断一下,因为如果match不到值,同时用group方法的话就会导致程序报错,所以要先判断下是否有值


resultC = re.search('[0-9]', a)

print(resultC)

# #打印结果是<re.Match object; span=(3, 4), match='1'>,这个和用match有明显的区别,索引位置是3-4

# #这是从第一个开始,没有规定说第一个必须是规则中写的0-9的任意数字,即全局匹配


resultD = re.findall('[0-9]', a)

print(resultD)

# #打印结果是['1', '2', '3'],找所有能匹配到的东西,统统拿出来,结果是个列表
3.2276
1
关注作者
收藏
评论(0)

发表评论

暂无数据
推荐帖子