【问题标题】:Compare 2 strings and display difference (php or javascript)比较 2 个字符串并显示差异(php 或 javascript)
【发布时间】:2011-01-05 22:48:49
【问题描述】:

比较必须即时进行,因此必须通过 javascript 或 php 完成(将发出 javascript ajax 请求)。

我需要的可能是高级差异显示,所以如果有任何一种好的支持库可能是最好的。

这张照片正是我所需要的>

添加 #1: 我发现这个http://ejohn.org/projects/javascript-diff-algorithm/(例如http://www.djsipe.com/js-diff/)没问题,但不支持多行?当只有一个字符不同时,它会改变整个单词......

添加 #2: 我测试了 php 脚本 (https://github.com/paulgb/simplediff/),但它有缺陷。

添加#3: 我找到了我要找的东西 (http://code.google.com/p/google-diff-match-patch/)

【问题讨论】:

标签: php javascript jquery


【解决方案1】:

这个对相关问题的回答似乎对 javascript 很有希望。 google-diff-match-patch

它提供了一个 API,可以处理所有复杂且众所周知的算法。但是,您必须对演示文稿做一些工作。

PHP 更加通用,有很多差异工具。 看看这个其他相关问题Calculate text diffs in PHP

【讨论】:

【解决方案2】:

【讨论】:

  • 如您所见,您给我的链接上的问题已有 2 年历史,并且已被接受的答案已断开链接(我今天下午已经对该答案发表了评论)。
  • @glavic 线程中有几个答案。这个看起来很有前途:github.com/paulgb/simplediff/blob/…
  • 已经测试过该脚本,或者我们应该将其称为 2 个函数。它不像我需要的那样工作。例如:如果我只添加一个新行,它会返回错误的差异......
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-10-19
相关资源
最近更新 更多