re.sub函数用于在字符串中替换匹配的文本。它的基本语法如下:
re.sub(pattern, repl, string, count=0, flags=0)
其中,pattern是要匹配的正则表达式模式,repl是替换的字符串,string是要处理的字符串,count是替换的最大次数(默认为0,表示所有匹配的地方都替换),flags是匹配模式。
下面是一个示例:
import re
string = "Today is a sunny day."
result = re.sub(r"sunny", "cloudy", string)
print(result)
输出结果为:“Today is a cloudy day.”
在上面的例子中,我们使用re.sub函数将字符串中的"sunny"替换为"cloudy"。
re.sub函数还支持使用替换函数作为repl参数,可以使用函数自定义替换逻辑。例如:
import re
def double(match):
return match.group(0) * 2
string = "Hello, World!"
result = re.sub(r"\w", double, string)
print(result)
输出结果为:“HHeelllloo, WWoorrlldd!!”
在上面的例子中,我们定义了一个替换函数double,该函数接收一个匹配对象match作为参数,然后返回替换后的字符串。在re.sub函数中,我们将该替换函数作为repl参数传入,实现了将字符串中的每个字母都重复一次的效果。