检索替换
re模块中提供的sub()、subn()函数用于替换目标文本中的匹配项,这两个函数的声明分别如下所示:
sub(pattern, repl, string, count=0, flags=0)
subn(pattern, repl, string, count=0, flags=0)
参数的具体含义如下:
pattern:表示需要传入的正则表达式。
repl:表示用于替换的字符串。
string:表示待匹配的目标文本。
count:表示替换的次数,默认值0表示替换所有的匹配项。
flags:表示使用的匹配模式。
sub()函数与sunb()函数的参数及功能相同,不同的是若调用成功,sub()函数会返回替换后的字符串,subn()函数会返回包含替换结果和替换次数的元组。这两个函数的用法如下所示。
import re
words = 'And slowly read,and dream of the soft look'
result_one = re.sub(r'\s', '-', words) # sub()函数的用法
print(result_one)
result_two = re.subn(r'\s', '-', words) # subn()函数的用法
print(result_two)
运行代码,结果如下所示:
And-slowly-read,and-dream-of-the-soft-look
('And-slowly-read,and-dream-of-the-soft-look', 7)