文本比较(C#版本)
文本比较(C#版本)
周银辉
文本比较效果如下:
比如abcdefg和a123defghik相比较而言,相当于前者删除bc,插入123,然后再插入hik而得到的,这里提供的API便是来计算这个的。
关于此算法的论文可以参考这里: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.4.6927&rep=rep1&type=pdf
如果看得费劲,那么可以参考这位仁兄的剖析:
http://blog.csdn.net/clariones/archive/2006/11/19/1396880.aspx,
http://blog.csdn.net/clariones/archive/2006/11/24/1412394.aspx
有人根据他的讲解编写了该算法的Java版本:
http://www.blogjava.net/phyeas/archive/2009/01/10/250807.html
我将其改写成了C#版,并且修改了一些Bug:
https://files.cnblogs.com/zhouyinhui/TextComparisonSln.zip
另外,如果基于“文本行”的概念进行比较,可以参考这里:
http://www.mathertel.de/Diff/default.aspx