🔀 テキスト差分 (Diff) ツール
2つのテキスト/コード/JSONの違いを 行単位+文字単位で視覚比較。LCS (最長共通部分列) アルゴリズムで正確に変更箇所を検出。ブラウザ内処理で機密データも安全。
📑 こんなときに使う
- 契約書のバージョン比較(旧版 vs 新版で何が変わった?)
- コードレビュー・修正前後の比較
- JSON API レスポンスの差分確認
- 翻訳の校正(原文 vs 修正版)
- ファイルが正しくコピーされたか検証
サンプル:
📄 元のテキスト
📄 比較先のテキスト
🎯 差分結果
🔒 すべてブラウザ内処理。テキストはサーバーに送信されません。
📐 使用アルゴリズム
LCS (Longest Common Subsequence) とは
2つの系列の最も長い共通部分列を見つけるアルゴリズム。DP(動的計画法)で O(N×M) で計算。Unix の diff コマンド・Git の差分表示・本ツール全てこのアルゴリズムをベースにしています。
文字単位差分の計算方法
変更行(add/delの組)を検出した後、行内をさらに単語/文字単位でLCS適用。挿入された部分が緑、削除された部分が赤でハイライトされます。Google Docs の変更履歴と同じ表示方式。
❓ よくある質問
- 機密文書も比較できる?
- はい。すべてブラウザ内処理 (JavaScript) で完結。テキストはサーバーに送信されません。機密契約書・社内コードも安心。
- 大きなファイルでも大丈夫?
- 1万行までサクサク動作。それ以上はLCSが O(N²) なので数秒かかる場合があります。
- Git の diff と同じ表示?
- はい。「+」追加、「-」削除、「 」変更なし。ただし本ツールは「文字単位」でも変更箇所をハイライトする点が独自。
- JSON を構造的に比較できる?
- テキストとして行単位で比較します。構造的比較は JSON フォーマッタ で整形してから比較してください。
- 結果をエクスポートできる?
- 結果ペインを選択コピーすれば可能。Unifield Diff 形式 (.patch) でのダウンロードは将来対応予定。