文本行差异比对
按行比对两段文本,标出新增 / 删除 / 相同
左侧放旧文本,右侧放新文本;减号表示左侧删除,加号表示右侧新增。每侧最多支持 2000 行。
–
示例
输入
左侧:alpha beta 右侧:alpha gamma
示例结果
alpha - beta + gamma
减号来自左侧旧内容,加号来自右侧新内容。
技术细节与边界
采用最长公共子序列(LCS)对齐行,时间与内存随两侧行数乘积增长,因此每侧限制 2000 行。它不识别语义等价、移动块或 JSON 字段重排;一行被修改通常显示为删除旧行并增加新行。
关于此工具
逐行比较两段文本,用增加、删除与保留标记展示差异。可忽略大小写或行尾空白,适合检查配置修改、接口样本和文字版本;比较在浏览器完成。
适用场景
- 快速看两份配置的差别。
- 对比两次日志输出,找到新增的错误。
操作步骤
- 在左右两个输入框分别放要比对的文本。
- 结果下方按行展示 diff;可点选项调整比较策略。
注意事项
本工具做的是行级 diff(不是逐字符 diff);相似但不完全相同的行会被判为不同。
常见问题
- 在线文本对比最多支持多少行?
- 本工具逐行对比时每侧最多支持2000行,以限制最长公共子序列计算的开销。两侧各2000行时,行数乘积为4000000;较大文件应拆分比较,结果不提供语义等价判断或移动代码块识别。
- 文本对比修改一行为什么显示删除和新增?
- 逐行文本对比通常把修改表示为删除旧行并新增新行。例如左侧1行a变成右侧1行b,会显示1次删除和1次新增;这表示两行文本不同,不代表应用实际执行了两次写入或文件操作。
- JSON 字段顺序不同能用文本对比判断一致吗?
- 文本对比不能判断JSON字段重排后的语义是否一致,只比较行文本。比如包含a与b的2个字段交换顺序,即使值仍是1和2也可能显示差异;需要语义比较时,应先用适当规则规范化数据。
相关工具