「この2つの文書、何が違うか比べて確認して」——上司や取引先からそう頼まれたとき、短い内容なら目を動かしながら確認できますが、テキストが長くなると違いが埋もれて、1箇所を見落としてしまうことも少なくありません。ソースコード、ログファイル、設定ファイルなど、2つの版を突き合わせて変更箇所を探す作業は、ITの現場でも日常の作業の一つです。

こうした「テキスト比較」は、**テキスト差分(diff)**と呼ばれる仕組みを使えば、目視で探す必要なく自動化できます。

この記事では、テキスト比較(テキスト差分)とは何か、diffの基礎、2つのテキストの違いを見つける方法を初心者向けに解説します。よくあるユースケースや注意点の整理、登録不要でブラウザだけで使える無料のオンラインテキスト比較ツールの使い方まで紹介します。

テキスト比較(テキスト差分)とは?

テキスト比較とは、2つのテキストを並べて「どこが追加され、どこが削除された、どこはそのままか」を特定する作業です。ITの現場では**diff(差分)**と呼ばれ、コマンドラインのdiffコマンドやGitで使われる言葉と同じものです。

diffツールは、2つのテキストを行(ライン)単位で分割して突き合わせます。各行を「同じ」「追加」「削除」の3つのどれかに判定し、違いを一目で分かる形に変換してくれます。

diffの仕組み

diffツールが比較を行うとき、おおむね次の3つのステップを踏みます。

  1. テキストを行に分割する —— 改行を区切りとして、それぞれのテキストを1行ずつの配列に分解します。
  2. 共通行を揃える —— 両方のテキストに存在する行を対応付けます。このとき「Aの3行目 = Bの3行目」のように位置がずれている行も、内容が同じなら一致と判定されます。
  3. 追加・削除行を特定する —— 対応付けられない行を、テキストBにのみ存在する「追加行」と、テキストAにのみ存在する「削除行」として表示します。

この仕組みのおかげで、「1回目と2回目の版で何が変わったか」を、最後まで読むことなく数秒で把握できます。

「差分」の読み方:diffは英語の「difference(違い)」から来ています。「テキストの差分をもらう」は「2つの版の違いを整理した結果をもらう」ことを意味します。

行ベースと文字ベース、どちらで比較するのか

テキスト比較には、比較の単位によって2つの考え方があります。

比較単位 判定の対象 得意なこと 向いている例
行ベース 1行ごと 結果が読みやすく、変更の流れが把握しやすい コード、文書、ログ、設定ファイル
文字ベース 1文字ごと 行の中のどこが変化したか正確に特定できる 1文字の誤字・表記ゆれの確認

行ベースは、テキストファイル全般に使いやすい標準的な方式です。Tools Hubのテキスト比較ツールも行ベースの比較を採用しています。

表示形式:統合(unified)と並べて(side-by-side)

diffの結果は、主に2つの表示形式で確認します。

表示形式 形 メリット
統合形式(unified diff) 1列。追加行は+、削除行は-で始まる Compactで共有しやすい。メールやチャットに貼りやすい
並べて表示(side-by-side) 元のテキストと新しいテキストを左右に並べる 「どこがどう変わったか」が直感的に分かる

統合形式はGitなどのバージョン管理の標準形式です。.diffや.patchとしてファイルに保存すれば「このファイルを適用してください」と渡せるのも特徴です。

テキスト比較が役立つシーン

1. コードやスクリプトの変更点確認

コードのリファクタリングや更新後、「変更前に比べて本当に意図した箇所だけ動いているか」を確認するために使います。人手ではなく自動ツールやAIで生成された変更をレビューする場合も、diffで素早く変更範囲を把握できるため見逃しが減ります。

2. 契約書・文書の改訂確認

契約書や議事録が相手から改訂されて返ってきたとき、前の版と改訂版を比較すれば、どの条項や文言が書き換えられたかを洗い出せます。目視で追うと「ここだけ少し変わっていた」を見落としやすいのですが、diffなら追加・削除が色分けされて一目で分かります。

3. ログ・設定ファイルの突き合わせ

障害の調査では、正常時と異常時のログを比較して「違う部分」を特定する手がかりにします。また、開発・本番環境の設定ファイルを比較すれば、環境ごとの差分を漏れなく確認でき、設定ミスによるトラブル予防にもつながります。

テキスト比較で気をつけたいこと

改行コード(行末)によるズレ

WindowsとMacでは行末のコード(CRLFとLF)が異なります。見た目が同じテキストでも、改行コードだけ違うと「全行が変更された」と判定されることがあります。比較結果が想定と違うときは、まず両方を同じ改行コードに揃えてから比較し直すとよいでしょう。

行末の空白

行の末尾に半角スペースが1つあるだけで、その行は「変更あり」と判定されます。比較結果に小さな違いが多数出てきたときは、行末の空白が原因でないか確認してみてください。

エンコーディング

テキストファイルの文字コード(UTF-8、Shift_JISなど)が一致していないと、文字化けや、本来一致すべき行が一致しない比較結果になります。比較で文字化けが見られたら、まずファイルのエンコーディングを確認してください。

サイズの上限

ブラウザで完結するツールでも、扱えるテキストには実用上の上限があります。Tools Hubのテキスト比較ツールは1テキストあたり最大200,000文字・20,000行まで対応しています。それを超える場合は、テキストを分割して部分ごとに比較するのが確実です。

比較前の下準備:比較する2つのテキストは、同じ「単位」で揃えてから比較すると結果が読みやすくなります。改行コード・余分な空行・エンコーディングを揃えておくと、本当に変わった箇所だけが残ります。

Tools Hubの無料テキスト比較ツールでの使い方

専用ソフトのインストールは不要です。Tools Hubのテキスト比較ツールを使えば、ブラウザだけで2つのテキストの差分を数秒で確認できます。処理はすべてブラウザ内で完結するため、入力したテキストがサーバーに送信されることはありません。

使い方(3ステップ)

1

テキストを入力・読み込み

テキスト比較ツールを開き、比較したい2つのテキストを入力欄に貼り付けます。テキストファイルを読み込むこともでき、左右それぞれ1ファイルずつ対応しています。

2

「比較する」を押す

差分が計算され、追加・削除・変更なしの行数が表示されます。「並べて」表示と「統合」表示(unified diff)の切り替えにも対応しています。

3

結果を確認・共有する

差分結果はunified diff形式でコピーでき、.diffファイルとしてダウンロードもできます。メールやチャットで共有したり、パッチファイルとして保存したりできます。

この記事で紹介したツール

テキスト比較(テキスト差分)ツール

ブラウザで完結・無料・登録不要。入力したテキストはサーバーに送信されません。

使ってみる

まとめ

  • テキスト比較(テキスト差分)は、2つのテキストの追加・削除・不変更を行単位で特定する技術
  • 表示形式は「統合(1列)」と「並べて(左右2列)」の2種類が主流
  • コード、文書、ログ、設定ファイルなど行単位で意味のあるテキストに向いている
  • 結果が想定と違う場合は、改行コード・行末の空白・エンコーディングを確認する
  • Tools Hubのテキスト比較ツールは、登録不要・アップロードなしでブラウザから無料で使える

2つのテキストの違いを「探す」作業は、diffを使えば「確認する」作業に変わります。まずは比較したい2つのテキストを准备して、Tools Hubのテキスト比較ツールで試してみてください。

よくある質問

テキスト比較は行単位ですか、文字単位ですか?

Tools Hubのテキスト比較ツールは行単位です。1行ごとに「同じ・追加・削除」のいずれかに判定されます。行の中の1文字単位の特定はできません。

どれくらいの長さのテキストを比較できますか?

1テキストあたり最大200,000文字・20,000行まで対応しています。それを超える場合は、テキストを分割して部分ごとに比較してください。

差分結果をファイルとして保存できますか?

できます。unified diff形式でコピーするか、.diffファイルとしてダウンロードできます。ダウンロードしたファイルは、パッチファイルとして共有することも可能です。

入力したテキストはサーバーに送信されますか?

いいえ。比較処理はすべてブラウザ内で完結し、入力したテキストが外部に送信されることはありません。