假设我们有一些文本,其中一些引号存储在表单中:
用户:报价
我们可以在文本中包含多个引号。
Agatha Drake: She records her videos from the future? What is she, a
f**ing time lord? Is she Michael J. Fox?
Harvey Spencer: This is just like that one movie where that one guy
changed one tiny, little thing in his childhood to stop the girl of
his dreams from being a crackhead in the future!
如何从python中的文本中提取引号(她从......录制她的视频,这就像那部电影......)
我试过
re.findall('\S\:\s?(.*)', text)
但它没有完成这项工作。
https://regex101.com/r/vH63Go/1
我怎样才能用Python做到这一点?
答案 0 :(得分:1)
如果您的字符串在一行的开头跟随用户的一致格式,并且双引号结束一个引号,您可以使用:
(?m)^[^:\n]+:\s?((?:.+\n?)*)
它使用多行模式并匹配行的开头,后跟既不是:
也不是新行的字符,而是:
。然后捕获包含内容的所有后续行。
这是regex101上的演示。