文本对比

两段文本行级差异对比,新增/删除一目了然

关于文本对比

文本对比(diff)通过最长公共子序列算法找出两段文本的最小差异集,是代码审查、配置比对、日志排查的基础工具。行级 diff 会把相同的行视为未变,标出新增行和删除行;好的 diff 实现应该让差异块尽量少、尽量集中,否则可读性会急剧下降。

使用步骤

  1. 把改动前后的两段文本分别粘贴进左右输入框
  2. 选择对比粒度:按行(适合代码、配置)或按词(适合句子微调)
  3. 查看高亮:删除行为红色、新增行为绿色,未变行置灰
  4. 逐块核对差异,用统计数字(+几行 -几行)快速评估改动量

常见错误

换行符不一致造成假差异

从 Windows 记事本复制的文本带 CRLF,与 LF 文本对比时每行都“不同”。先统一换行符再对比。

按词对比看不出结构变化

按词 diff 会把整段重排显示成碎片。代码和配置请用按行对比,按词只适合自然语言微调。

忽略空白差异选项

缩进从空格改成 Tab 会让整篇“全变”。多数 diff 工具有“忽略空白”开关,比对逻辑改动时先打开它。

常见问题

为什么明明只改了一个字,却显示整段都变了?

多半是换行符不一致(Windows 的 CRLF 与 Unix 的 LF),或者行首缩进被统一替换。统一换行符后重新对比即可。

支持多大的文本?

本工具上限约 2000 行/侧(受浏览器内存约束),更大的文件建议用本地 git diff 或专用工具。

是按行比对还是按字符比对?

按行比对,行内再标字符级差异。这个组合最适合代码和配置——纯字符比对在长文本上会产出一大堆碎片化高亮,反而看不清改了哪几行。

能忽略空格和大小写吗?

目前是严格比对,空格和大小写都算差异。这是有意的默认值:格式化前后、缩进变化在代码评审里也是要看见的改动。确实只想看语义变化时,先统一格式再比。

两边的文本会上传吗?

不会,diff 算法在浏览器里跑。合同、配置、带密钥的 env 文件都可以直接贴。不过更稳妥的习惯是:任何敏感内容先脱敏再贴,哪怕工具声明不上传。

来源:内置实现 (LCS 算法) · License: MIT · 分类:文本

相关阅读

← 返回 ToolHub 全部工具

✦ OPEN SOURCE TOOLS ✦

安全、快捷、开源工具及资源

无需安装、无需注册、无需命令行 —— 挑一个工具,填参数,出结果。

99 个工具 · 50 条资源 · 文件拖进来、内容粘进来都能用 · 无需注册
运行方式排序共 99 个
🔒 为什么本地执行更放心这一条是我们和多数工具站的根本区别
数据不出设备图片、Token、表格都在你的浏览器内处理,服务端不接触你的输入
没有账号体系不注册、不收邮箱、不做用户画像,收藏与记录只存在本机
可离线使用安装为桌面/手机应用后,断网也能运行全部本地工具