一尘不染

文字差异算法

c#

我需要一种算法,该算法可以比较两个文本文件并突出显示它们之间的差异,并且(可以更好!)可以以有意义的方式计算它们的差异(例如两个相似的文件应比两个不同的文件具有更高的相似性得分,并使用“相似”一词以正常术语定义)。听起来很容易实现,但事实并非如此。

实现可以在c#或python中进行。

谢谢。


阅读 264

收藏
2020-05-19

共1个答案

一尘不染

在Python中,有difflib,正如其他人建议的那样。

difflib提供了SequenceMatcher类,可用于为您提供相似率。示例功能:

def text_compare(text1, text2, isjunk=None):
    return difflib.SequenceMatcher(isjunk, text1, text2).ratio()
2020-05-19