我有两个文本,一个是从DOCX文件读入的,另一个是从TXT文件读入的。 DOCX文件的布局如下:
{NAME}
{ADDRESS}
亲爱的Doe先生,
尽管您在我们的网站上申请,但我们很遗憾地通知您 你没有得到这份工作。
{END}
TheCompany
注册号码12345
TXT文件的布局是相同的,但是括号中的任何内容都被填入,这使得无法仅比较字符串一对一。它看起来像这样:
杰西
Hillington road 23
亲爱的Doe先生,
尽管您在我们的网站上申请,但我们很遗憾地通知您 你没有得到这份工作。
最诚挚的问候,
TheCompany
注册号码12345
我尝试拆分文本部分并将这些部分相互比较。这很简单:
' '.join(text1.split(split_after)[1:]).split(split_before)[0]
用于DOCX,对于text2(TXT)也是如此,然后进行比较。但是因为句子可以改变,所以它以
开头尽管您在我们的网站上申请了(...)
然后打破所有代码。想象一下DOCX文件最多20页的这种情况。我需要更有用和可编程的东西。任何想法?
答案 0 :(得分:0)
不清楚您的错误或问题是什么,但是我认为您正在描述的挑战的一般解决方案:
Tokenize,然后将表达式组合并比较匹配块的数量。
对于单个或几个单词的值,ngram块上的技术相同。