SS 工具箱
SS 工具箱
所有数据均在本地处理

免费在线文本对比工具,逐行逐词查差异

逐行、逐词对比两段文本,全部在浏览器本地运行。

原始文本
新文本
差异统计+2 行新增−0 行删除~3 行修改4 行未变
1−export function greet(name: string) {
1+export function greet(name: string, greeting = 'Hello') {
2 const hour = new Date().getHours();
2 const hour = new Date().getHours();
3− if (hour < 12) {
3+ if (hour < 6) {
4 return `Good morning, ${name}`;
4 return `Good morning, ${name}`;
5+ } else if (hour < 18) {
6+ return `Good afternoon, ${name}`;
5 }
7 }
6− return `Hello, ${name}`;
8+ return `${greeting}, ${name}`;
7}
9}

所有计算都在本地完成,文本不会离开你的设备。行级对齐基于 Myers 差异算法;配对成「修改」的行还会再做一次词级高亮,便于定位到具体改动。忽略空白、大小写等选项只影响匹配方式,展示的始终是你粘贴的原文。

功能特点

  1. 逐行对齐,逐词高亮

    行级对齐使用 Myers 差异算法,每一对修改行还会额外做词级高亮,因此你不只知道某一行变了,还能看清具体是行内哪几个词变了。

  2. 并排视图与统一视图

    可以在双栏视图和统一视图之间切换:双栏把删除与新增左右对照,统一视图带 - 和 + 前缀,可直接复制成补丁风格的 diff。

  3. 按数据特点选择匹配方式

    可忽略空白、忽略大小写、去除行尾空格、忽略空行。这些开关只影响行的匹配方式,展示的文本始终保持你粘贴时的原样。

  4. 改动数量一目了然

    工具栏会统计新增、删除、修改、未变更的行数,让你先判断这次改动的规模,再逐行查看。

  5. 只看变化,长段自动折叠

    开启「只看变化」后,大段相同的文本会被隐藏。每处变化上下各保留 3 行未变更内容,其余折叠成一行,点击即可展开。

常见问题

这个文本对比工具免费吗?

免费。这是一个在线免费的文本 diff 工具,无需注册、没有水印、没有使用次数限制,打开页面粘贴两段文本即可查看差异。

怎么对比两段文本?

把原始文本粘贴到左边输入框,把新文本粘贴到右边输入框。输入的同时就会重新计算差异,无需点击任何按钮,结果立即出现。

我的文本会被上传到服务器吗?

不会。对比完全在你的浏览器中运行,粘贴的文本和差异结果都不会被上传,也不会在下次访问时保留。

「只看变化」这个选项有什么作用?

它会把大段未变更的行折叠起来。每处变化上下各保留 3 行未变更内容,被隐藏的其余部分变成一行,点击可以重新展开。

怎么忽略空格或大小写带来的差异?

打开「忽略空白」「忽略大小写」「去除行尾空格」或「忽略空行」。这样匹配时会把这些差异视为相同,而显示的文本仍保留原本的拼写和空格。

对比的文本量有限制吗?

每侧最多比较 5000 行。如果输入超出这个长度,只比较前 5000 行,页面会明确提示被截断,而不是悄悄丢弃剩余内容。

可以把 diff 复制走吗?

可以。点击「复制 diff」会把统一格式的差异以标准的 - 和 + 前缀放到剪贴板,可直接粘贴到 pull request、聊天消息或补丁文件里。

相关工具
赞助MindElixir