我正在使用 python 语言进行自然语言处理任务,遇到了以下问题:我有一个 pandas.core.series.Series 类型的句子向量,我想将每个句子(一列)分成四个独立的句子(四列),并以此为参考将主句子分成四个关键字符串。
这些句子具有以下一般结构:
问题:用户信息:他们拒绝接受系统。 原因:目前,SAP 尚未对“UF”信息进行转换,因为当客户端在外部时,该转换对于运输者来说仍然不存在。在本模式中,注释由于 XML 中的标签值不兼容而被拒绝。 解决方案:必须联系 Triangulus 团队以实现补偿行动,以调整或更新纳税日期、允许或批准纳税和获得税务机关的批准。我们正在重新考虑亟待解决的问题,并寻求彻底解决问题的最佳方法。 用户:卡洛斯·唐特尔。BUGFIX:10745625
粗体字符串是我想要用来拆分句子的键,即问题:,原因:,解决方案:和用户:。
是否可以使用 python 来实现?
答案1
逐字进行迭代,如果看到关键字,则在每个关键字前添加换行符。
#!/usr/bin/env python3
import sys
word_list=['Problem:','Cause:',
'Solution:','User:']
with open(sys.argv[1]) as f:
for line in f:
for word in line.strip().split():
if word in word_list:
print("\n"+word,end=" ")
else:
print(word,end=" ")