テキスト差分(diff)比較ツール
2つの文章を並べて貼り付けると、行単位で追加・削除された箇所を色分けして表示します。処理はすべてブラウザ内で完結し、入力内容がサーバーへ送信されることはありません。
追加 2行・削除 1行
テキスト差分(diff)の使い方
2つの文章を貼り付ける
「テキストA」に元の文章、「テキストB」に比較したい文章を貼り付けます。旧バージョンと新バージョンのように、前後関係が分かる順で入れてください。
比較するを押す
「比較する」を押すと、行単位の差分が下に表示されます。追加された行数・削除された行数もあわせて表示します。
差分を確認して反映する
緑色(+)が追加、赤色(−)が削除、無色がどちらにも共通する行です。必要な変更だけを本来のファイルへ反映してください。
仕組みと考え方
本ツールは、2つのテキストを改行で行に分割し、動的計画法で「最長共通部分列(LCS)」を求めることで差分を計算します。LCS はどちらのテキストにも同じ並び順で登場する行の最大集合で、そこに含まれない行がそれぞれ「削除された行」「追加された行」として表示されます。Git や多くの差分ツールが使う diff アルゴリズムと同じ考え方です。
この方式は行単位の比較のため、1 行の中の一部だけが変わった場合でも、その行全体が「削除+追加」の1組として表示されます。行の途中の数文字だけを直したいときは、表示された削除行と追加行を見比べて該当箇所を探してください。また、インデントや行末の空白の違いも「別の行」として扱われるため、フォーマッタの整形前後を比較すると差分が実際の変更より多く出ることがあります。
処理はすべてブラウザ内の JavaScript で行われ、比較する2つのテキストが当サイトのサーバーへ送信されることはありません。行数が多いテキスト(片方でも2000行を超える場合)は計算量が増えるため、上限を超えた場合はエラーとして表示し、計算を行いません。
使いどころ・注意点
- 行の順序が入れ替わっただけの場合でも、入れ替わった行はいったん削除・追加として表示されます(LCS は並び順を保つため)。
- コードの差分を見る場合は、インデントの変換(タブ↔スペース)を先に揃えてから比較すると余分な差分が出ません。
- 契約書や規約など長文の変更確認にも使えますが、意味の変化まで判定するものではないため、重要な文書は必ず目視でも確認してください。
- 2000行を超える文章は比較できません。章ごとに分けるなど、テキストを分割してから比較してください。
よくある質問
貼り付けた文章は保存・送信されますか?
いいえ。比較はブラウザ内で完結し、当サイトのサーバーへは送信していません。未公開の原稿や契約書でもそのまま利用できます。
単語単位や文字単位の差分は出せますか?
本ツールは行単位の差分のみに対応しています。1行内の細かな違いは、削除行と追加行を見比べて確認してください。
大きなファイルを比較できますか?
行数が片方でも2000行を超えるとエラーになります。ファイルを章や節ごとに分割してから比較してください。
スペースの数だけ違う行はどう表示されますか?
文字列として完全一致するかどうかで判定するため、見た目が同じでも空白の数や種類が違えば別の行として削除・追加が表示されます。