跳到正文

文本对比(差异检查)

粘贴文本或代码文件的两个版本,在浏览器中对比,新增、删除和修改的行与词会高亮显示。

0 行
0 行
请在两侧都输入文本后再比较。
在浏览器中运行 · 无需上传工作原理

文本对比 使用方法

  1. 1

    添加两个版本

    把原文粘贴到左侧,把修改后的文本粘贴到右侧,也可以在两侧分别打开或拖入文件。

  2. 2

    选择比较方式

    选择并排或统一视图,选择按词或按字符高亮,并决定是否忽略空白字符或大小写。

  3. 3

    逐处查看改动

    用箭头或 N、P 键在各处改动之间跳转,需要更多上下文时可展开折叠的行。

  4. 4

    保存结果

    下载 .patch 文件,或复制统一格式的差异,用来分享或通过 Git 应用。

限制与 Pro

免费使用,无需注册:每个文本或代码文件最大 20 MB,可比较数万行;如果一次比较耗时超过 8 秒,会停止并给出提示。

Pro 去除广告;比较规模只受设备内存限制。 了解 Pro

关于 文本对比

靠肉眼找出两版合同草稿、两个版本的配置文件,或同一份表格两次导出之间的差异,既慢又容易出错。把两个版本粘贴或拖入这里,工具会自动逐行对齐:删除的行标红,新增的行标绿,两边都有改动的行同时显示两种颜色,并在行内标出具体不同的词或字符。

并排视图适合文章和合同;统一视图像 Git 和代码评审工具那样,把删除行和新增行上下排列。写作类文本可选按词高亮,编号、ID 和数字可选按字符高亮,只关心哪些行有变化时选按行即可。勾选“忽略空白字符”,可以隐藏代码重新缩进和行尾空格造成的差异;忽略大小写后,“Total”和“TOTAL”会被视为相同。

较长的未改动部分会折叠,只保留前后各三行上下文,让改动一目了然;点击箭头(或按键盘上的 N 和 P)即可在各处改动之间跳转。比较在后台线程中运行,采用开源库 jsdiff 的 Myers 算法,即使文件超过 10,000 行也能保持流畅;结果很大时,会在滚动时按需绘制。

比较完成后,可以把差异下载为标准的统一格式 .patch 文件,git apply 和 patch 都能识别,也可以复制到剪贴板。本工具只比较纯文本,不会读取 Word、PDF 或图片文件;移动过的段落会显示为一处删除加一处新增,而不是移动。

隐私

两段文本以及你打开的文件都只在浏览器中读取和比较,不会上传。只有两段文本合计不超过 400,000 个字符时,才会把最近一次比较保存在本地存储中,因此大文件或敏感文件不会被保存。

功能

并排或统一视图

文档用双栏视图,代码用 Git 风格的统一视图,两种视图都带行号。

按词和按字符高亮

不只告诉你这一行不同,还能看清行内具体改了什么。

为大文件而设计

后台线程加按需绘制,让 10,000 行的比较也保持流畅。

标准 .patch 导出

统一格式差异,带三行上下文,可直接用于 git apply 或代码评审。

文本对比:常见问题

如何比较两份文档的差异?
把第一个版本粘贴到“原文”框,把第二个版本粘贴到“修改后”框,也可以在两侧各打开一个文件。差异会立即显示在下方:红色表示删除的文本,绿色表示新增的文本。如果要找出数字中被改动的一位或名字中的一个字母,请切换到“按字符”。
“忽略空白字符”有什么作用?
如果两行只是空格、制表符或缩进不同,就会被视为相同,因此重新缩进的代码、行尾空格和句号后的双空格不会再显示为改动。换行仍会计入,所以一个段落被拆成两行时会被标出。空格有意义时请关闭它,例如 Python 代码或定宽数据。
可以比较代码文件并下载补丁吗?
可以。在两侧分别打开 .js、.py、.json 或 .yml 等源文件,选择“统一”视图和按字符或按词高亮,再点击 .patch 按钮即可。下载的是带三行上下文和文件头的标准统一差异,git apply、patch 和大多数代码评审工具都能读取。
文件大小或行数有限制吗?
每个文件最大 20 MB。由于计算在后台线程中进行,10,000 到 50,000 行的比较通常不到一秒就能完成。如果两个大文件几乎完全不同,比较会在 8 秒后停止;改为比较较小的片段,或使用“按行”,就能避免这种情况。
差异比较工具会上传我的文本吗?
不会。比较在浏览器中运行,保密合同、源代码或数据都不会到达服务器。为方便使用,最近一组文本会保存在此浏览器的本地存储中,但仅限内容较小时;清空两个文本框或使用无痕窗口,就不会留下任何内容。
全部文本工具