python re.sub替换多行数据
时间: 2023-07-26 21:04:06 浏览: 273
python字符串替换re.sub()实例解析
可以使用re.DOTALL标志来匹配多行数据,并使用re.sub函数进行替换。以下是一个例子:
```python
import re
text = '''
This is line 1.
This is line 2.
This is line 3.
'''
# 使用re.DOTALL标志匹配多行数据
pattern = re.compile('This is line 2.(.*?)(?=This is line|$)', re.DOTALL)
# 替换多行数据
new_text = re.sub(pattern, 'This is a new line.', text)
print(new_text)
```
输出:
```
This is line 1.
This is a new line.
This is line 3.
```
在上面的例子中,使用正则表达式匹配"This is line 2."和"This is line"之间的多行数据,并将其替换为"This is a new line."。注意,这里使用了零宽正向先行断言(?=This is line|$)来匹配"This is line"或字符串结尾,以避免替换掉最后一行数据。
阅读全文