我有两个文件1)paragaph.txt和list.txt。我希望程序逐行运行list.txt并将其与paragraph.txt中的短语匹配,如果匹配的首字母大小匹配在paragraph.txt中。
Paragraph.txt
在“插入”选项卡上,图库包含旨在与文档整体外观协调的项目。您可以使用这些库来插入表格,页眉,页脚,列表,封面和其他文档构建块。创建图片,图表或图表时,它们还会与您当前的文档外观进行协调。
list.txt - 列出内容如下:(但list.txt文件中没有项目符号,只是 短语一个低于另一个)
预期输出
在“插入”选项卡上,图库包含旨在与文档整体外观协调的项目。您可以使用这些库来插入表格,页眉,页脚,列表,封面和其他文档构建块。创建图片,图表或图表时,它们还会与您当前的文档外观进行协调。
我对问题的理解:
如果两者都包含列出的项目数据而不是下面的代码,则会生成一个可以标题为套接并返回到段落的结果。 这种方法可以扩展到段落吗?我是否应该使用nltk n-gram模型来拼写两个单词短语和3个单词短语?
with open("paragraph.txt") as f, open("list.txt") as g:
l=f.readlines()
l1=g.readlines()
print list(set(l)&set(l1))
一些改进: 现在能够识别短语并将其与段落匹配并将匹配返回为大写。
capitalized_phrases = open("list.txt").readlines()
words = open("paragraph.txt").read()
for phrase in capitalized_phrases:
all_words_found = False
capitalized_phrases = phrase.lower().split(" ")
for word in capitalized_phrases:
if word in words:
all_words_found = True
break
if all_words_found:
print phrase.title()
所以,现在关键是替换找到的匹配(titlecased)代替段落中的原始内容。有什么帮助吗?