Java中的diff实现

时间:2010-06-09 14:24:43

标签: java diff

我正在寻找Java中的diff实现。我已经看到Python有自己的SequenceMatcher(带有difflib),这正是我需要的......在Java中。

有没有搬运工具?或者是否有其他类/库在Java中执行相同的操作?

如果没有,我在哪里可以找到该difflib的源代码(如果在语音中是免费的),以便在Java中自己实现SequenceMatcher?

不幸的是,Apache Commons Lang对我帮助不大。

谢谢!

2 个答案:

答案 0 :(得分:17)

这个图书馆似乎就是你所追求的:google-diff-match-patch

它具有以下主要特征:

  1. 差异:比较两个纯文本块,并有效地返回差异列表。
  2. 匹配:给定搜索字符串,在纯文本块中找到最佳模糊匹配。为准确性和位置加权。
  3. 修补程序:将修补程序列表应用于纯文本。即使基础文本不匹配,也要尽最大努力应用补丁。
  4. 如果您想要替代方案,也可以尝试:java-diff-utils

答案 1 :(得分:0)

您好您可以运行可以使用https://code.google.com/p/google-diff-match-patch/执行所需作业的MR作业。我不觉得有任何工具可以开箱即用。