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

2つの文章を行ごとに比べ、追加・削除された行と、行の中で変わった部分を色と記号で表示します。左右に並べた表示やunified diffの書き出しにも対応。

表示

選択したファイルは、お使いの端末のブラウザ内で処理されます。当サイトのサーバーへ送信・保存することはありません。アクセス解析の取り扱いはプライバシーポリシーをご確認ください。

使い方

  1. 左(上)に元の文章、右(下)に変更後の文章を貼り付けます。「ファイルを開く」でテキストファイルを読み込むこともできます。
  2. 必要に応じて「行頭・行末の空白を無視」「大文字・小文字を区別しない」を選び、「比較する」を押します。
  3. 追加された行は「+」と緑、削除された行は「−」と赤で表示されます。行の中で変わった語句には下線または取り消し線が付きます。
  4. 「表示」で「左右に並べる」を選ぶと、元の文章と変更後の文章を横に並べて表示します。
  5. 初期設定では、変更のない行は前後3行だけを表示します。すべて見たい場合は「変更のない行もすべて表示」を選びます。
  6. 「unified diff をコピー」または「.diff で保存」で、差分をパッチ形式で書き出せます。

対応形式と制限

  • 比較できるのは、それぞれ5,000行・50万文字までです。
  • ファイルはUTF-8のテキストファイル(2MBまで)を読み込めます。Word・PDF・Excelなどの文書ファイルは読み込めません。
  • 違いが非常に多い場合(行の追加・削除が合わせて約2,000行を超える場合)は、詳しい比較を省略し、変わった範囲をまとめて「削除・追加」として表示します。
  • 行の移動は「削除」と「追加」として表示されます。
  • 「行頭・行末の空白を無視」は行の途中の空白の違いは無視しません。
  • unified diff は diff -u と同じ形式ですが、無視する設定がオンのときは無視した違いを含みません。最終行の改行の有無だけの違いは検出しません。

計算・変換の仕組み

行単位の比較には、最小の編集(追加・削除)の手順を求める Myers の差分アルゴリズムを使っています。先頭と末尾の共通部分は先に取り除いてから比較します。

削除された行と追加された行が並んでいる場合は、行どうしを組にして語句単位でもう一度比較し、変わった部分を強調します。英数字は単語ごと、日本語などはおおむね1文字ごとに比べます。

左右並びの表示では、変更のまとまりごとにn番目の削除行とn番目の追加行を同じ高さに並べます。

unified diff は変更の前後3行を文脈として含め、「@@ -開始行,行数 +開始行,行数 @@」の見出しを付けて出力します。

色だけに頼らないよう、行頭の「+」「−」の記号と、読み上げソフト向けの「追加」「削除」のラベルも付けています。

よくある質問

文章はサーバーに送信されますか?

いいえ。比較とファイルの読み込みはすべてブラウザ内で行い、入力した文章を送信・保存することはありません。契約書や原稿の比較にも使えます。

ファイル同士を比較できますか?

テキストファイル(.txt・.md・.csv・ソースコードなど、UTF-8)は「ファイルを開く」で読み込めます。Wordなどの文書ファイルは、文章をコピーして貼り付けてください。

差分をパッチとして保存できますか?

はい。「.diff で保存」で、変更の前後3行を含む unified diff 形式(diff -u と同じ形式)のファイルを保存できます。

改行コードの違い(CRLFとLF)は差分になりますか?

なりません。改行コードはどちらも同じ改行として扱います。

最終更新日: