テキスト比較(差分チェック・diff)

2つの文章を貼り付けると、違うところを色分けして表示します。追加・削除された行に加えて、行の中で書き換わった文字まで強調するので、細かな修正も見落としません。

削除された行 追加された行 行の中で変わった部分

入力した文章はブラウザの中だけで比較し、どこにも送信しません。改行コード(Windows の CRLF と Mac・Linux の LF)の違いは自動でそろえて比べます。

このツールでできること

2つの文章のどこが違うのかを、行ごと・文字ごとに色分けして表示します。契約書や利用規約の改定前後、校正前と校正後の原稿、何度も書き直した企画書の版違い、設定ファイルやプログラムのコードなど、目で見比べると見落としやすい「一文字だけの修正」も確実に見つけられます。

表や名簿の比較にも使えます。Excel やスプレッドシートの列をそのままコピーして左右に貼れば、1行1件として比べられるので、「先月のリストから消えた人・増えた人」をすぐに確認できます。

使い方

  1. 左の欄に変更前の文章、右の欄に変更後の文章を貼り付けます。テキストファイルは「ファイルを開く」かドラッグ&ドロップで読み込めます。
  2. 入力すると自動で比較され、下に結果が出ます。赤が削除された行、緑が追加された行で、濃い色の部分が行の中で書き換わった文字です。
  3. 長い文章では「変更の前後3行だけ表示」のままにしておくと、同じ部分がたたまれて変更箇所だけを追えます。たたんだ部分はクリックで開けます。「↑ 前の変更」「↓ 次の変更」で順に移動できます。
  4. スペースの数やインデントの違いが気になるときは「空白の違いを無視」、英字の大小や「ABC」と「ABC」の違いを気にしないときは、それぞれの設定をオンにします。
  5. 結果をエンジニアに共有したいときは「差分をコピー」で、Git などと同じ unified 形式のテキストとしてコピーできます。

知っておくと便利なこと

差分はどうやって見つけているか

2つの文章の「最長共通部分列」、つまり順番を保ったまま両方に共通して残っている行をできるだけ多く見つけ、残りを削除と追加として扱います。このツールは Git の diff と同じ Myers のアルゴリズムで行単位の差分を出し、削除と追加が隣り合う行どうしをさらに文字単位で比べて、変わった部分だけを濃く塗っています。

行を入れ替えただけでも「削除+追加」になる

差分は順番を保った共通部分を探すので、段落の順序を入れ替えると、片方は「削除」、もう片方は「追加」として表示されます。内容が消えたわけではないので、赤と緑に同じ文があれば移動したと考えてください。

無視の設定の注意点

「全角・半角を区別しない」は Unicode の NFKC 正規化で比べるため、「ア」と「ア」、「1」と「1」のほか、「㈱」と「(株)」、「①」と「1」も同じとみなします。「空白の違いを無視」は全角スペースも含めてすべての空白を取り除いて比べるので、Python や YAML のようにインデントに意味があるファイルでは、オフのまま比べるのが安全です。

unified 形式の読み方

コピーした差分の @@ -12,4 +12,5 @@ は、「元の文章の12行目から4行」と「新しい文章の12行目から5行」を比べた部分、という意味です。行頭が - なら削除、+ なら追加、半角スペースなら変わっていない行です。

よくある質問

貼り付けた文章はどこかに送信されますか?
送信しません。比較はすべてお使いのブラウザの中で行うので、社外秘の文書や個人情報を含む文章でも使えます。ページを閉じると入力内容は消えます。
Word や PDF のファイルを比べられますか?
ファイルのまま読み込めるのはテキストファイル(.txt、.csv、.md、各種ソースコードなど)です。Word や PDF は、本文を選択してコピーし、それぞれの欄に貼り付けて比べてください。
ファイルを開いたら文字化けしました。
UTF-8 として読めないファイルは、Windows で多い Shift_JIS として読み直します。それでも化ける場合は、メモ帳などで開いてコピーし、貼り付けてください。
何行くらいまで比べられますか?
数万行程度までは快適に比べられます。ただし違いがあまりに多い場合は、処理が重くならないように一部をまとめて「削除」「追加」として表示することがあります。
スマホでも使えますか?
使えます。画面が狭いときは最初から「1列(上下)」の表示になります。左右に並べたい場合は表示の設定で切り替えてください。