当我们想根据一个正则表达式或者某个特定字符来替换字符串中符合条件的字串,可以使用re库中sub函数来进行操作,re库是python中自带的无需安装。
re.sub()
基本语法:
re.sub(pattern, repl, string, count=0, flags=0)
pattern
是正则表达式模式,用于匹配要替换的字符串。repl
是替换后的字符串。string
是要进行替换操作的原始字符串。count
是可选参数,用于指定替换的最大次数。默认值为 0,表示替换所有匹配项。flags
是可选参数,用于指定正则表达式的标志。默认值为 0。
re.sub
的作用是在字符串 string
中查找匹配正则表达式 pattern
的部分,然后用字符串 repl
替换匹配到的部分。如果指定了 count
参数,则最多替换 count
次匹配项。
替换字符举例
import re
# 示例字符串
text = "快速的棕色狐狸。"
# 将所有出现的 "狐狸" 替换为 "猫"
pattern = r'狐狸'
replacement = '猫'
# 使用 re.sub 替换模式
new_text = re.sub(pattern, replacement, text)
# 打印结果
print(new_text) # 快速的棕色猫
正则替换举例
import re
# 示例字符串
text = "The quick brown fox jumps over the lazy dog."
# 将所有单词的首字母替换为大写字母
pattern = r'\b\w'
replacement = lambda match: match.group().upper()
# 使用 re.sub 替换模式
new_text = re.sub(pattern, replacement, text)
# 打印结果
print(new_text) # T Q B F J O T L D.
在这个例子中,re.sub
函数用正则表达式模式 \b\w
匹配单词的首字母,然后使用一个函数(lambda 表达式)将匹配到的部分替换为大写字母。