【发布时间】:2018-10-26 19:57:54
【问题描述】:
我有格式为的成绩单文件
(name): (sentence)\n (
(姓名):(句子)\n
(句子)\n
等等。我需要所有的句子。到目前为止,我已经通过对文件中的名称进行硬编码来使其工作,但我需要它是通用的。
utterances = re.findall(r'(?:CALLER: |\nCALLER:\nCRO: |\nCALLER:\nOPERATOR: |\nCALLER:\nRECORDER: |RECORDER: |CRO: |OPERATOR: )(.*?)(?:CALLER: |RECORDER : |CRO: |OPERATOR: |\nCALLER:\n)', raw_calls, re.DOTALL)
Python 3.6 使用 re.或者如果有人知道如何使用 spacy 做到这一点,那将是一个很大的帮助,谢谢。
我只想在一个空语句之后获取 \n,并将其放入它自己的字符串中。而且我想我只需要抓住最后给出的磁带信息,例如,因为我想不出一种方法来区分这句话是否是某人演讲的一部分。 有时,行首和冒号之间的单词不止一个。
模拟数据:
CRO:您离世贸中心有多远,大约有多少个街区?三或 四个街区?
63FDNY 911 通话记录 - EMS - 第 1 部分 9-11-01
来电者:
CRO:不客气。谢谢。
接线员:再见。
CRO:再见。
记录者:磁带的前一部分在 0913 时 36 秒结束。
此磁带将在 B 面继续。
操作员纽维尔:废话。
【问题讨论】:
-
我怀疑如果您提供示例数据,您会得到更好的响应,这样人们就不必花费自己的时间来模拟数据来测试正则表达式。
-
您的正则表达式似乎比您描述的要复杂。