免費線上文字差異檢查 | 程式碼檔案比較工具

並排比較兩段文字並即時突顯差異。非常適合程式碼、文章和文件的比對。

文字比對工具 (Diff)

報告問題

發現錯誤或對 免費線上文字差異檢查 | 程式碼檔案比較工具 有建議?請告訴我們!

原文
修改後文本
差異結果
已添加: 0
已刪除: 0

文字比對工具的運作方式

文字比對工具會接收兩段文字,一段是原始版本,一段是修改後的版本,然後精確標出兩者之間新增、刪除或維持不變的內容。你可以直接貼上兩個版本,也可以上傳檔案,工具會對齊內容,並在每處差異發生的位置加以標示。

比對是如何運作的

這個工具使用最長共同子序列演算法:先找出兩段文字共同擁有的最長相符片段,再把其餘部分標記為插入或刪除。比對可以在三種細節層級上進行:逐字元、逐詞或逐行。行模式適合查看文件中哪些整行發生了變化;詞模式適合改寫過的句子;字元模式則能抓出單一錯字的修正。結果可以顯示為左右並排的兩欄(分割檢視),也可以合併成一段連續文字並在行內標示(合併檢視)。新增的文字以綠色底線標示,刪除的文字以紅色刪除線標示,結果上方會即時更新新增與刪除的字元計數。檔案也能直接上傳,支援 .txt、.json、.js、.ts、.css、.html、.md、.yaml 或 .xml 格式,上傳後的比對方式與貼上的文字相同。

範例:一句改寫過的話

原文:「會議將於10點開始。」修改後:「會議將於10點在19號會議室開始。」在詞模式下,只有「在19號會議室」被標記為新增,因為句子裡其餘的詞都相符。若把同一組文字切換到字元模式,工具會改為把「在19號會議室」中的每個字和空格標記為字元層級的插入,因為在這裡字元才是被比對的最小單位。

範例:比較一段 JSON 片段

上傳或貼上兩個版本的設定檔,原理也一樣。原始檔案:

{
  "port": 3600,
  "debug": true
}

修改後的檔案:

{
  "port": 9100,
  "debug": true,
  "timeout": 26
}

在行模式下,port 所在的那一行會被標記為已變更,因為3600變成了9100;debug 所在的那一行也會被標記為已變更,因為它現在以逗號結尾,為下一個欄位騰出空間;新增的「timeout」: 26 那一行則被標記為新增。只有開頭和結尾大括號那一行維持不變。這裡的比對把兩個檔案都當作純文字處理,而不是解析後的 JSON,所以即使只是把這兩個鍵的位置互換、數值沒變,仍然會顯示為一處差異。

常見問題