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參數傳入,實現了將字符串中的每個字母都重復一次的效果。