如何使用文字比對
- 把舊版本貼到「原始文字」,新版本貼到「修改後文字」。
- 下方會自動顯示差異:紅色是刪除,綠色是新增,深色標記是行內實際改動的字詞。
- 需要時勾選「忽略空白差異」或「忽略大小寫」,並在「行內差異」選擇以字詞或字元標示。
- 用「檢視方式」切換左右並排或單欄;內容很長時保留「隱藏相同的行」,只看改動附近的段落。
文字比對的原理
本工具採用 Eugene Myers 於 1986 年發表的差異演算法,Git 預設的 diff 也是使用這個方法。它會找出把舊版本變成新版本所需的「最少新增與刪除行數」,因此結果通常就是人眼認為最合理的改動範圍,不會因為中間插入一行,就把後面整段都標成不同。
一行內容被修改時,演算法會把它視為「刪除舊行、新增新行」,所以統計中的新增行與刪除行都會各算一次,這和 Git 的計算方式一致。為了方便閱讀,畫面會把相對應的舊行與新行放在同一列,再對這兩行做第二次比對,標出實際改動的字詞或字元,一眼就能看出改了哪裡。
字詞與字元標示怎麼選?
「字詞」模式把英文以單字為單位、中文以單一漢字為單位比較,適合文章校稿、新聞稿與合約修訂,結果最容易閱讀。「字元」模式逐字比較,連英文單字中改了一個字母(例如 color 與 colour)都能精準標出,適合檢查程式碼、網址、序號與帳號這類一個字都不能錯的內容。
如果兩行幾乎完全改寫,行內標示會變得零碎、反而難以閱讀,這時可以把「行內差異」切到「關閉」,只用整行的紅綠底色判斷哪些行被刪除、哪些行是新加的。內容很長時,保留「隱藏相同的行」只會顯示改動前後各三行,其餘相同的段落會收合成一列提示,捲動起來更省力。
忽略空白與大小寫的使用時機
從 Word、PDF 或網頁複製的文字,常夾帶多餘的空格、Tab 或行尾空白,造成大量無意義的差異。勾選「忽略空白差異」後,每行開頭與結尾的空白會被忽略,中間連續的空白也視為一個,只留下真正的內容改動,比對排版不同但內容相同的兩份文件時特別有用。
「忽略大小寫」適合比對網址、電子郵件、主機名稱或 SQL 關鍵字這類大小寫不影響意義的內容。比對程式碼時則要小心:在 Python 或 YAML 中縮排本身就有意義,多數程式語言的變數名稱也區分大小寫,這時建議兩個選項都不要勾選,才不會漏掉真正會造成錯誤的改動。
資料安全與效能
合約、報價單、報告與原始碼常含有機密內容,不適合貼到會上傳資料的網站。本工具的比對完全在你的瀏覽器中執行,貼上的文字不會傳送到任何伺服器,也不會被儲存,關閉頁面後內容就會消失。一般電腦上比對數千行的文件通常不到一秒,改動越少、速度越快,手機上也能順利使用。
常見問題
怎麼比較兩份文件哪裡不一樣?
把兩份文件的文字分別貼到「原始文字」與「修改後文字」,工具會自動逐行比對,紅色為刪除、綠色為新增,行內改動的字詞會再加深標示。
可以直接比對 Word 或 PDF 檔嗎?
目前需要先把文件內容複製後貼上。PDF 複製出來的文字常有斷行與多餘空白,建議勾選「忽略空白差異」減少干擾。
為什麼只改了一個字,新增和刪除都各算一行?
以行為單位比對時,被修改的行等於「刪除舊行、加入新行」,這和 Git 等版本控制工具的計算方式相同。實際改動的字會在行內標示出來。
比對的內容會被上傳嗎?
不會。所有計算都在瀏覽器中完成,文字不會離開你的裝置,適合比對合約、報價單或原始碼等機密資料。
手機上可以用嗎?
可以。手機上預設以單欄顯示,刪除的行在上、新增的行在下;需要時也能切換成左右並排並左右滑動查看。
最後更新: