文本 diff 对比

我要提建议

以左侧为标准、右侧对照比对:不一致的行与字符片段直接在右侧标出,可忽略大小写与空白,本地比对。

相关工具

这个工具是做什么的

校对文案、核对配置、比对接口返回时,最需要的是「右边这份和标准到底哪里不一样」。本工具以左侧为基准:两段文本按行对齐后并排显示,右侧与标准不一致的行会被标出,不一致的具体字符片段还会在行内高亮,因此不必逐字比对就能定位到改动位置;右侧缺失或多出的行也会分别标注。可以选择忽略大小写或忽略空白,避免缩进与格式差异淹没真正的改动。比对基于最长公共子序列,先掐掉公共前后缀再算,常见场景下速度很快;内容全部在本机引擎处理:数据不出设备。

使用方法

  1. 左侧粘贴「标准 / 原始」内容(比对以它为准),右侧粘贴待核对内容。
  2. 按需勾选「忽略大小写」或「忽略空白」。
  3. 点击「比对」:右侧与标准不一致的字符片段会高亮,缺失行标「(缺失)」、多出行标绿色底。
  4. 需要贴给别人时可复制统一 diff 文本。

常见问题

左右两栏是怎么对应的?
左侧是基准。两段内容按行对齐后并排显示:整行相同则原样呈现;同一位置内容不同则算「不一致」,行内不同的字符片段在右侧以黄色高亮标出;左侧有而右侧没有的行在右侧显示「(缺失)」,右侧多出的行整行标绿。
差异是怎么算的?
先按行做最长公共子序列(LCS)比对,跳过开头与结尾完全相同的行,再对中间部分求 LCS;对判定为「不一致」的行,再用字符级 diff 找出具体差异片段。因此「改了中间一句话」这类情况能精确到字符,而不是只告诉你整行不同。
「忽略空白」具体忽略什么?
忽略时会把连续空白(空格、制表符)折叠成一个空格并去掉行首行尾空白再比较,因此缩进调整、行尾多余空格不会算作差异。注意这只是比较口径,展示的仍是原始文本。
超大文本会怎样?
精确比对的内存开销与两侧行数乘积成正比。超出规模阈值时会退回近似比对(把中间部分整体标记为删除与新增),并在结果上方明确提示,避免页面卡死。
会上传文本吗?
不会。比对全程在本机用本地引擎完成,数据不出设备。