python中的多行正则表达式行为使用re.sub

时间:2016-11-18 14:07:32

标签: python regex multiline

我有这样的文字:

<TAG> blabla </TAG>

<TAG2> 
multiline
<TAG2>

some other text

现在,我想删除所有以XML标记开头和结尾的文本,但保留文本的其余部分。 我试过了

import re
text = re.sub(r'<.*>.*?</.*>', '', text, flags=re.MULTILINE)

但这只删除了第一个不是多行的标记。 如果我在正则表达式中添加'\ n',它可以工作:

text = re.sub(r'<.*>\n?.*?\n?</.*>', '', text, flags=re.MULTILINE)

产生

some other text

如果我指定re.MULTILINE标志,为什么必须手动添加换行符?

0 个答案:

没有答案