Python 使用正则表达式匹配多行文本

Python 使用正则表达式匹配多行文本,python,regex,Python,Regex,以下是我目前的代码: 编译(r'事件开始。*事件结束',文本,re.DOTALL) 全文如下: text=事件的开始 日期:星期一 时间:3:50-5:00 描述:带蛋糕 活动结束 我想做一个正则表达式函数,它可以复制从事件开始到事件结束的所有内容 如何删除换行符?删除换行符: >>>import re >>>>text = re.sub('\n', ' ', text) >>>text='START OF EVENT

以下是我目前的代码: 编译(r'事件开始。*事件结束',文本,re.DOTALL) 全文如下:

text=事件的开始

日期:星期一

时间:3:50-5:00

描述:带蛋糕

活动结束

我想做一个正则表达式函数,它可以复制从事件开始到事件结束的所有内容 如何删除换行符?

删除换行符:

>>>import re    
>>>>text = re.sub('\n', ' ', text)    
>>>text='START OF EVENT Date:Monday Time: 3:50 - 5:00 Description: Bring cake END OF EVENT'
>>>re.search('START OF EVENT.*END OF EVENT',text).group()
'START OF EVENT Date:Monday Time: 3:50 - 5:00 Description: Bring cake END OF EVENT'

不:(.问题是我的文本是多行的。请先删除换行符,然后尝试下面给出的代码…您是否查看了
re.search
的文档?如果您需要点匹配换行符,它会告诉您添加
flags=re.DOTALL
。\n还提供了删除操作below@Grismar我加上了re.DOTALLIs有办法获得没有额外步骤删除换行符的文本?无需删除换行符,它可以与
re.DOTALL
@PeterPetigru匹配结果如何?使用换行符或清理文本精确输入文本?精确输入。换行符和allOkay..然后在模式中应用group(),如re.search('START OF EVENT.*END OF EVENT',text,re.DOTALL).group()