python中re.sub函数

re是正则的表达式,sub是substitute表示替换

re.sub是相对复杂点的替换

re.sub(pattern, repl, string, count=0, flags=0)

re.sub的参数:5个参数

参数1:pattern

表示正则中的模式字符串。

参数2:repl

就是replacement,表示被替换的字符串,可以是字符串也可以是函数。

参数3:string

表示要被处理和替换的原始字符串

参数4:count

可选参数,表示是要替换的最大次数,而且必须是非负整数,该参数默认为0,即所有的匹配都会被替换;

参数5:flags

可选参数,表示编译时用的匹配模式(如忽略大小写、多行模式等),数字形式,默认为0。

例子:

只替换前两个

import re

a = '44444'
b = re.sub('4', '2', a, 2)
print(b)

匹配多个连续汉字

import re

a = '   (rr 我)#1  (d 只是)#1  (p 以)#1  (vi 笑) (v 作答)#1#2#3 (。 。)'
a = re.sub(u"[\u4e00-\u9fa5]+", '*', a) # 匹配多个连续汉字,替换为*
print(a)

匹配除了汉字之外的其他符号

# 正则表达式  u"[\u4e00-\u9fa]"  表示所有的汉字  [^...] 表示除了...之外
a = '“设置文件名,怎么样?”'
a = re.sub(u"[\u4e00-\u9fa]", '', a)
print(a)   # 设置文件名怎么样 

 

详见:re.sub()用法的详细介绍_jackandsnow的博客-CSDN博客_re sub

(160条消息) python 正则表达式模式_m0_46483236的博客-CSDN博客_python 正则表达式模式 

你可能感兴趣的:(python,python)