一起学Python:re模块的高级用法

Python开发者交流平台 2021-09-10 13:27:59

re模块的高级用法

search

需求:匹配出文章阅读的次数

#coding=utf-8import re

ret = re.search(r"\d+", "阅读次数为 9999")
ret.group()


运行结果:

'9999'


findall

需求:统计出python、c、c++相应文章阅读的次数

#coding=utf-8import re

ret = re.findall(r"\d+", "python = 9999, c = 7890, c++ = 12345")
print(ret)


运行结果:


['9999', '7890', '12345']

sub 将匹配到的数据进行替换

需求:将匹配到的阅读次数加1

方法1:

#coding=utf-8import re

ret = re.sub(r"\d+", '998', "python = 997")
print(ret)


运行结果:

python = 998


方法2:

#coding=utf-8import redef add(temp):
    strNum = temp.group()
    num = int(strNum) + 1
    return str(num)

ret = re.sub(r"\d+", add, "python = 997")
print(ret)

ret = re.sub(r"\d+", add, "python = 99")
print(ret)


运行结果:

python = 998
python = 100



split 根据匹配进行切割字符串,并返回一个列表

需求:切割字符串“info:xiaoZhang 33 shandong”


#coding=utf-8import re

ret = re.split(r":| ","info:xiaoZhang 33 shandong")
print(ret)


运行结果:

['info', 'xiaoZhang', '33', 'shandong']


做最专业最懂你的python开发者交流平台,提供你最需要的开发学习资源。 我们专注于python开发技术的学习与交流,我们坚持,每天进步一小步,人生进步一大步!关注【Python开发者交流平台】,与我们一起学习进步。