说明: re.sub()方法用于实现字符串替换
语法: re.sub(pattern,repl,string,count,flags)
pattern: 模式字符串 repl:替换的字符串 string:被查找替换的原始字符串 count:替换的次数,默认为0,表示替换所有的匹配 flags:可选参数,比如re.I 不区分大小写.re.S使(.)能够匹配所有字符,包括换行符
话不多说,直接上代码
import re
#1.将所有非数字字符替换成空格
str = "11,22;33:44--55"
res = re.sub("[^0-9]+"," ",str)
print(res)
#输出结果:11 22 33 44 55
#2.将非数字字符替换成空格,只替换两次
res = re.sub("[^0-9]+"," ",str,count=2)
print(res)
#输出结果:11 22 33:44--55
#3.将所有非数字字符替换成空格,并且计算替换的次数
str = "11,22;33:44--55"
res = re.subn("[^0-9]+"," ",str)
print(res)
#输出结果:('11 22 33 44 55', 4)
来个实战练练手
将手机号前面7位替换为*,只显示后面4位
tel = '15590580001'
res = re.sub("\d{7}","*******",tel)
print(res)
#输出结果:*******0001