Diff 差分比較エンジンを開始しました

テキスト比較 テキスト比較ツール

2つのテキストの差分をすばやく比較します。文字、単語、行の3つの比較モードと Unified Diff 表示に対応し、プログラムコード、設定ファイル、AI 出力、一般文書の比較・分析に適しています。

比較モード
表示モード
オプション

テキスト A

0文字

Text B

0文字

Text Compare テキスト比較完全ガイド

text comparison の原理、Diff algorithm、利用シーンを深く理解できます

Text Compare とは何ですか?

Text Compare は2つのテキストの差分を比較するツールです。共通部分と相違点をすばやく見つけられます。コードのバージョン比較、ファイル変更の追跡、AI 出力の比較、文章の校正など、さまざまな場面で変更点を一目で確認できます。

手作業で 1 行ずつ比較する場合と異なり、Text Compare ツールは追加・削除・変更された内容を自動判定し、色分けして強調できます。比較作業の効率と正確性を大きく高められます。このツールは次に対応します 文字単語 および 3 種類の比較粒度で、異なる用途に対応できます。

Diff とは何ですか?

差分Diff(Difference の略)は、2 つのテキストファイルや内容の差分を計算する処理と結果を指します。Diff の出力では通常、追加・削除・変更された行を示し、Git などのバージョン管理システムやコードレビュー工程の中核技術として使われます。

標準的な Diff 出力には、次の要素が含まれます:

  • 追加済み:緑色で表示され、2 つ目の paragraph にのみ存在し、1 つ目にはない content を示します。
  • 削除しました: 赤色は、1 つ目の text に存在し 2 つ目では削除された content を示します。
  • 変更済み: 黄色で表示される箇所は内容が変更された部分で、完全な追加・削除ではないことを示します。
  • 等しい:変更されていない部分で、比較の baseline context として使用します。

Git Diff の原則

Git の Diff 機能は次を基盤としています Myers 差分アルゴリズムEugene W. Myers が 1986 年に提案した algorithm で、2 sequence 間の Longest Common Subsequence(LCS)を O(ND) の時間計算量で求められます。

Myers アルゴリズムの中核となる考え方は グラフを編集 次の中から最短経路を探索:

  • 2 つのテキスト段落を、2 次元グリッドの X 軸と Y 軸として扱います。
  • 2つの位置の文字が同じ場合は、編集回数を消費せず対角方向へ移動できます。
  • このアルゴリズムの目的は、原点 (0,0) から (N,M) まで、対角移動が最も多い、つまり共通部分が最も多くなる経路を見つけることです。
  • この path に対応する「off-diagonal movement」が、必要な編集操作(追加または削除)です。

Git Diff の output format もこのツールで扱います。 Unified Diff pattern の基礎。Unified Diff では --- および +++ ファイル名に次を付けます @@ ... @@ 変更箇所を次でマーク +(新規)と - (delete)prefix は各 row の変更種別を示します。

テキスト比較ツールはどのような場面で使うのが適切ですか?

テキスト比較ツールは、特に次のような場面で役立ちます。

  • コードのバージョン比較: ソースコードの異なるバージョンを比較し、変更箇所を素早く特定します。Code Review や Debug に非常に役立ちます。
  • Profile 比較:JSON、YAML、ini など 2 つの設定ファイルについて変更前後の差を比較し、誤変更や重要設定の見落としを防ぎます。
  • AI 出力品質の検証: 異なる Prompt での AI model 出力を比較したり、同じ Prompt を複数 model へ入力して response の違いを比較したりし、より適した結果を探せます。
  • 文書の改訂履歴管理: contract、report、article などの document modification history を追跡し、各編集で具体的に何が変わったかを明確に表示します。
  • コンテンツ盗用検出: 2 つの文章の類似度を素早く比較し、盗用や無断引用の可能性を確認する参考にできます。
  • データ移行の検証:データベース移行や形式変換の後に、変換前後のデータ内容を比較し、変換の正確性と完全性を確認します。
  • ローカライズと翻訳の校正:original text と translated text を比較し、paragraph の欠落、重複、不整合がないか確認します。

類似度はどのように計算されますか?

Similarity Score は 2 つのテキストがどの程度似ているかを 0%(完全に異なる)から 100%(完全に同じ)までで数値化した指標です。このツールでは次の式で計算します。

Similarity = (共通文字数 × 2) ÷ (Text A の長さ + Text B の長さ) × 100%

ここでいう「number of common characters」は次を基準にします。 最長共通部分列(LCS) LCS は、2 つの sequence に共通して現れ、元の順序を維持する最長 subsequence を指します。LCS が長いほど 2 つの文章の共通部分が多く、Similarity Score も高くなります。

行比較モードでは「行」単位、文字比較モードでは「文字」単位で Similarity Score を計算し、より細かな類似度評価を行えます。

テキスト比較 FAQ

Q1: character、single word、line の 3 つの比較 mode にはどのような違いがありますか?

文字比較:character 単位で比較し、spelling difference や小さな text change を正確に特定する用途に適しています。
Word Compare:word 単位で比較します。文章の修正前後など、sentence や paragraph level の差を比較する用途に適しています。
行比較:テキストを 1 行単位で比較します。Git Diff に最も近い動作モードで、プログラムコードや構造化テキストのバージョン比較に適しています。
用途に応じて最適な粒度を選ぶことを推奨します。文字単位まで正確に比較したい場合は「Character」、文章の段落を比較したい場合は「Single Word」、コードのバージョン管理では「Line」が適しています。

Q2:Side-by-Side と Unified Diff の表示モードにはどのような違いがありますか?

Side-by-Side(左右比較):2 つのテキストを横並びで表示し、左に Text A、右に Text B を配置して、差分のある行を色付きで強調します。直感的で理解しやすく、従来のテキスト比較に慣れた使い方ができます。
Unified Diff:2 つのテキスト段落を 1 つのビューに統合して - この接頭辞は削除された行を示します。+ プレフィックスで新しい行を示し、末尾は @@ block header は変更位置を示します。Git Diff コマンドの出力に最も近い形式で、開発者に広く親しまれています。
デスクトップでは Side-by-Side モードを推奨します。モバイルでは Unified Diff のほうが狭い画面で読みやすく、このツールはモバイル端末で適切な表示モードへ自動的に切り替えます。

Q3:オプションの「Ignore case」「Ignore blanks」「Ignore blank lines」はそれぞれ何をする機能ですか?

大文字・小文字を無視:比較時に英字の大文字・小文字を区別せず、「Hello」と「hello」を同一とみなします。case-insensitive な内容の比較に適しています。
空白を無視:比較時に space、tab などすべての空白文字の差を無視します。indentation style の違いが logic に影響しない program code の比較に適しています。
空行を無視:比較時に空行を有効な差分として扱いません。このオプションを有効にすると、2 つの文章が空行の数だけ異なる場合は同一と判定されます。
これらの option は組み合わせて使えます。重要でない差分を除外し、本質的な変更へ集中するのに役立ちます。

Q4:text comparison の similarity score(Similarity)は何を表しますか?

Similarity Score は、2 つのテキストがどれほど似ているかを 0〜100% で表す指標です。100% は完全一致、0% は共通部分がないことを意味します。計算は Longest Common Subsequence(LCS)に基づきます:
Similarity = (2 × LCS length) ÷ (Text A length + Text B length) × 100%
一般に、類似度が 90% 以上なら差分は小さく、70~90% なら一定の変更があり、70% 未満なら大きな変更があると考えられます。類似度はあくまで参考値なので、具体的な変更箇所は Diff 表示で確認してください。

Q5:text content はサーバーへアップロードされますか?privacy は安全ですか?

まったくありません。このツールは純フロントエンドアプリケーション, すべてのテキスト比較、差分計算、類似度解析はブラウザ内でローカルに行われ、データがサーバーへ送信されることはありません。ソースコード、業務文書、個人データなどの機密情報も安心して比較できます。このツールはオフラインでも動作します。

Q6:difference report はどう export しますか?どの形式に対応していますか?

「を使用できます結果をコピー button で Diff result を clipboard へ copy するか、またはレポートをダウンロード」ボタンを押すと、差分レポートをプレーンテキストファイル(.txt)としてダウンロードできます。レポートにはファイルヘッダー、ブロック位置、差分行を含む完全な Unified Diff 形式の出力が含まれ、保存やチーム共有に適しています。Side-by-Side モードの差分は、コピー時に読みやすいマークアップ形式へ自動変換されます。

完了