在左侧输入框中粘贴「原文本」或「旧版本」内容,在右侧输入框中粘贴「修改后」或「新版本」内容。点击「开始对比」按钮后,工具会以行为单位比较两段文本的差异,并以不同颜色高亮显示:绿色表示新增的行,红色表示删除的行,黄色表示修改的行。
对比结果下方会显示统计信息,包括新增行数、删除行数、修改行数和相同行数,以及两段文本的相似度百分比。相似度越高,说明两段文本越接近。点击「清空」按钮可以快速清空两侧的输入内容,方便进行下一次对比。
本工具支持忽略空白字符的选项,开启后会自动忽略行首、行尾的空格和换行符差异,更关注实际内容的变化。这对于比较代码格式化前后的差异特别有用。
文本对比工具是程序员日常工作中不可或缺的利器。在代码审查(Code Review)时,可以快速查看某次修改前后的代码差异,确认变更是否符合预期。在版本控制系统(如 Git)不方便使用的情况下,本工具可以作为临时替代方案。
编辑和写作场景同样适用。编辑在审校稿件时,可以对比作者修改前后的版本;学生在写论文时,可以比较不同版本的差异。法律和商务领域,合同修订版本的比对也是常用场景,帮助快速定位条款的增删改。
文本差异比较的底层算法通常采用「最长公共子序列」(LCS, Longest Common Subsequence)算法或其变体。该算法通过动态规划在两个文本中找出最长的相同子序列,从而确定最优的编辑路径(新增、删除、替换)。时间复杂度通常为 O(n×m),其中 n 和 m 分别是两段文本的长度。
除了 LCS,现代 diff 工具还使用 Myers 算法等优化策略,在处理大规模文本时性能更优。在代码领域,diff 算法还会考虑代码语法结构,而不仅仅是纯文本的行级别比较(如 tree-sitter 语法树 diff)。本工具采用行级别对比,简单直观,适合大多数日常场景。