首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于文本的C# Diff算法

用于文本的C# Diff算法
EN

Stack Overflow用户
提问于 2010-09-22 04:14:57
回答 4查看 18.9K关注 0票数 13

我正在寻找一个不同的算法,将产生像这样的编辑修订页面的结果。我或多或少刚刚开始寻找,我并不反对自己去做,但我不需要重新发明轮子。

我将使用C# 4.0。我基本上有两个字符串,一个旧的,一个新的。我想通过突出显示和删除来了解新版本中发生了什么变化。

EN

回答 4

Stack Overflow用户

发布于 2017-06-15 20:27:55

我发现谷歌已经发布了做diff,match和patch的代码,其中包含c#类和测试代码。代码并不是很难使用IMHO。

https://github.com/google/diff-match-patch

这里有很好的文档:

https://github.com/google/diff-match-patch/wiki/API

票数 6
EN

Stack Overflow用户

发布于 2010-09-22 04:31:34

它基于通常称为LCSLongest common subsequence算法。

旧文本和新文本的LCS给出了保持不变的部分。因此,旧文本中不属于LCS的部分就是被更改的部分。

从上面的wiki页面:

这是一个经典的计算机科学问题,是diff (输出两个文件之间的差异的文件比较程序)的基础,并且在生物信息学中有应用程序。

票数 5
EN

Stack Overflow用户

发布于 2010-09-22 05:12:02

您可以查看用C#编写的示例的Menees Diff

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3764107

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档