python正则替换字符串

2023-03-08 00:00:00 字符串 替换 正则

在 Python 中,可以使用 re 模块中的 sub() 函数来进行正则表达式替换。sub() 函数接受三个参数:

  • 第一个参数是正则表达式模式,用于匹配要替换的字符串。
  • 第二个参数是用于替换匹配字符串的新字符串。
  • 第三个参数是要搜索的原始字符串。

以下是一个示例代码:

import re

# 使用正则表达式替换字符串
s = "The quick brown fox jumps over the lazy dog."
result_str = re.sub(r"fox", "cat", s)

print(result_str)

在上面的代码中,我们首先导入 re 模块。然后,我们定义了一个字符串 s,其中包含一个单词 "fox"。接下来,我们使用正则表达式 r"fox" 匹配字符串 "fox"。使用第二个参数 "cat" 替换它。最后,我们将替换结果赋值给变量 result_str,并打印它的值。

输出结果将是:

The quick brown cat jumps over the lazy dog.

需要注意的是,如果要对字符串进行多个替换,可以使用正则表达式中的捕获组和反向引用来实现。例如:

import re

# 使用正则表达式替换多个字符串
s = "The quick brown fox jumps over the lazy dog."
result_str = re.sub(r"(brown|fox|lazy)", r"\1 dog", s)

print(result_str)

在上面的代码中,我们首先导入 re 模块。然后,我们定义了一个字符串 s,其中包含三个单词 "brown"、"fox" 和 "lazy"。接下来,我们使用正则表达式 (brown|fox|lazy) 匹配这三个单词中的任意一个。使用反向引用 \1 将匹配的单词替换为其本身和单词 "dog" 的组合。最后,我们将替换结果赋值给变量 result_str,并打印它的值。

输出结果将是:

The quick brown dog fox jumps over the lazy dog dog.

在本例中,单词 "brown" 和 "lazy" 都被替换成了 "brown dog" 和 "lazy dog"。而单词 "fox" 则被替换成了 "fox dog"。

相关文章