テキスト差分
テキスト処理処理はすべてブラウザ内で完結します。データは送信されません
変更前
変更後
差分
両側に入力すると比較が始まります
2つのテキストを並べ、どこが変更され、どこが追加され、どこが削除されたかを行ごとに示します。変更行は最小差分で整列し(最長共通部分列アルゴリズム)、ひとまとまりを「変わった」とだけ扱うことはしません。設定ファイル、ログ、コード片、文章の2つの版を比べるのに向いています。
機能
- 行ごとに比較し、追加・削除・未変更をそれぞれ示します
- 変更は最小差分で整列(LCS アルゴリズム)。ひとまとまりのままの印を付けません
- 左右2ペインで行番号も同時に表示し、元のファイルと1対1で対応します
- CRLF / LF の改行の違いは自動で無視するので、偽の差分が画面を埋めません
- 長すぎるテキストは自動で縮退し、その旨を伝えます。ページが固まることはありません
使い方
- 左の欄に元のテキスト、右の欄に新しいテキストを貼り付けます
- 比較結果はリアルタイムで更新されます。ボタンを押す必要はありません
- 緑が追加、赤が削除、灰色が未変更です
よくある質問
- 2つのテキストが同じに見えるのに差分が出るのはなぜですか?
- よくある原因は行末の空白か改行コードの違いです。このサイトでは CRLF と LF を同じ改行として扱いますが、行末に余分な空白があればそれは差分として数えられます —— 実際に違っているのですが、目で見つけにくいだけです。
- 変更は何を基準に整列されますか?
- 最長共通部分列(LCS)アルゴリズムで両側の最大の一致部分を求め、残りを追加と削除として扱います。そのため、本当に変わった行だけが示され、最初の差分点から後ろをすべて変更として塗りつぶすことはありません。
- テキストが長すぎるとどうなりますか?
- 比較そのものが O(n×m) のアルゴリズムなので、長すぎる入力では「全体を削除 + 全体を追加」という粗い結果に縮退します。その際は画面で縮退したことを明示します —— 結果は正しいままで、最小差分に整列されていないだけです。
関連ツール
文字数カウント
テキスト処理日本語や中国語は字数、英語は単語数で別々に数え、文字数・行数・バイト数・読了時間も出します。すべてブラウザ内で処理し、送信しません。
テキスト整形
テキスト処理ログや表からコピーした1列を整形します。重複行の削除、並べ替え、空行・前後の空白・行番号の削除、空白のまとめを個別に切り替えできます。
命名規則の変換
テキスト処理8つの命名規則の間で識別子を変換します。fooBarBaz や FOO_BAR のような混在も語に分解し、連続する大文字も語ごとに切ります。
簡体字・繁体字変換
テキスト処理中国語を簡体字と繁体字の間で相互変換します。常用語は語単位で置換し、残りは最も一般的な字形を採るため、一部は人の確認が必要です。
正規表現テスト
テキスト処理ブラウザで正規表現を試せます。一致のリアルタイムハイライト、名前付きキャプチャグループ、置換プレビューに対応し、壊滅的なバックトラックも防ぎます。
Markdown プレビュー
テキスト処理左に Markdown を書くと右にリアルタイムで描画します。貼り付けた HTML は文字として表示し、画像の外部リクエストも起こしません。