python3正则表达式之sub替换函数

2025-04-17 12:11:40

1、打开python开发工具IDLE,新建‘所鼙艘疯zzsub.py’文件,并写代码如下:import repattern = re.compile(r'概嗤先眚\w+ \w+')str = 'hello 123,hello 4565'm = pattern.findall(str)print (m)复习findall函数,因为sub是替换所有,findall是查找所有,只有查找到了,才好替换,这里\w匹配字母数字下划线

python3正则表达式之sub替换函数

2、F5运行代码,打印出查找的所有内容

python3正则表达式之sub替换函数

3、修改代码如下,替换查找到的所有内容import repattern = re.compile(r'\w+ \w+')str = 'hello 123,hello 4565'm = pattern.findall(str)print (m)n = pattern.sub('hello world' ,str)print (n)

python3正则表达式之sub替换函数

4、F5运行代码,打印内容如下图,成功替换

python3正则表达式之sub替换函数

5、注意如果将第一步的代码改为如下分组方式,代码如下:import repattern = re.compile(r'(\w+) (\w+)')str = 'hello 123,hello 4565'm = pattern.findall(str)print (m)n = pattern.sub('hello world' ,str)print (n)

python3正则表达式之sub替换函数

6、F5运行代码,结果如下图,这是说明,不论匹配方式,只要匹配了,就替换

python3正则表达式之sub替换函数

7、根据上一步的分组使用\1 \2来替换一下,修改代码如下:import repattern = re.compile(r'(\w+) (\w+)')str = 'hello 123,hello 4565'm = pattern.findall(str)print (m)n = pattern.sub(r'\2 \1' ,str)print (n)

python3正则表达式之sub替换函数

8、F5运行代码,打印结果如下图,其实很好理解,sub的第一个参数是替换后的内容,\2是元组的第二个值,\1是元组的第一个值

python3正则表达式之sub替换函数
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢