re.sub()返回替换后的新字符串,re.subn()返回(新字符串,替换次数)元组;前者适用于只需结果的场景,后者适合需统计或校验替换量的情况。

Python里用正则替换文本,主要靠 re.sub() 和 re.subn() 这两个函数。它们功能相似,但返回值不同——这是最核心的区别。
re.sub:只返回替换后的新字符串
它按正则模式查找匹配项,并用指定内容替换,最终只返回处理完的字符串,不告诉你替换了几次、在哪替换了。
- 语法:
re.sub(pattern, repl, string, count=0, flags=0) -
count参数可限制最多替换几次(默认全部) - 如果没匹配到,原字符串直接返回,不做改动
例子:import retext = "价格:100元,折扣后:85元"new_text = re.sub(r"\d+元", "XX元", text)print(new_text) # 输出:价格:XX元,折扣后:XX元
re.subn:返回(新字符串,替换次数)元组
它做的是和 sub 完全一样的替换操作,但额外多返回一个整数——本次成功替换了几次。
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。
还木有评论哦,快来抢沙发吧~