search

Found

info 概要

2文字列のレーベンシュタイン編集距離を挿入・削除・置換の最小回数で算出。類似度パーセントと正規化値を併記し、最大2000文字まで2系統を同時比較できる編集距離計算ツール。

📘 使い方

  1. 比較したい 2 つの文字列を「文字列 A」「文字列 B」に入力する
  2. 「大文字小文字を区別」「前後の空白を除去」のトグルを必要に応じて切り替える
  3. 編集距離・類似度・正規化距離と挿入/削除/置換の内訳を確認する

レーベンシュタイン距離計算機

0 / 2000 文字
0 / 2000 文字

編集距離

0

類似度

100.0 %

正規化距離

0.000 (0-1)

操作内訳

挿入

0

削除

0

置換

0

※ アルゴリズム: 動的計画法による標準レーベンシュタイン距離 (挿入・削除・置換のコストは各1)

※ 上限: 1文字列あたり2000文字まで。バックトレースで挿入/削除/置換の回数を分離して表示します。

Article

レーベンシュタイン距離計算機|編集距離を挿入・削除・置換の内訳付きで算出

2 つの文字列がどれだけ違うかを「最小編集回数(レーベンシュタイン距離)」で返す計算ツール。距離値だけでなく、類似度パーセント・0〜1 の正規化距離・挿入/削除/置換それぞれの回数まで分解して表示する。

💡 このツールについて

「kitten」を「sitting」に直すには何手かかるか。スペルチェッカーやファジー検索を実装するとき、この「1 文字ずつ直すなら最小で何回か」という距離が判定の土台になる。だが多くの計算ツールは距離の数字だけを返すため、その距離が「置換が多いのか、それとも挿入・削除が多いのか」までは分からない。

レーベンシュタイン距離は、挿入・削除・置換をそれぞれ 1 回ぶんのコストとして数え、ある文字列を別の文字列に変換する最小の手数を求める指標だ。このツールは動的計画法で距離を計算したうえで、最適な編集経路をたどり直して挿入・削除・置換の内訳を分離して見せる。閾値をいくつに設定すれば誤判定が減るかを、自分の手元の文字列で実際に試しながら決められる。最大 2000 文字まで 2 系統を同時に比較できる。

🧐 よくある質問

類似度パーセントはどう計算されますか? (1 - 距離 / 長い方の文字数) × 100 で求めています。距離が 0 なら 100%、片方を完全に書き換えるほど距離が長い方の文字数に近づき 0% に近づきます。

正規化距離とは何ですか? 編集距離を「長い方の文字数」で割った 0〜1 の値です。文字列長が違うペアどうしを公平に比べたいときに使います。距離 3 でも、7 文字と 70 文字では意味が違うためです。

ジャロ・ウィンクラー距離とどう使い分けますか? レーベンシュタインは挿入・削除・置換の最小編集回数を数える指標で、住所や長い社名のように全文字が同じ重みを持つ照合に向きます。ジャロ・ウィンクラーは短い人名や先頭一致を重視する照合に向くため、データの性質で選び分けます。

ダメラウ・レーベンシュタインとの違いは? 標準のレーベンシュタインは隣り合う 2 文字の入れ替え(転置)を「2 回の編集」として数えます。「conversion」と「convresion」のような打ち間違いを 1 編集として扱いたいときは、転置を許容するダメラウ・レーベンシュタイン版を使います。

大文字小文字や絵文字はどう扱われますか? 「大文字小文字を区別」をオフにすると A と a を同一視します。比較は文字コード単位で行うため、サロゲートペアの絵文字は内部的に 2 単位として数えられる点に注意してください。

2000 文字を超えるとどうなりますか? 1 文字列あたり 2000 文字で入力が切り詰められます。距離計算は文字数の二乗に比例して重くなるため、ブラウザで実用的に動く範囲として上限を設けています。

📚 編集距離の豆知識

レーベンシュタイン距離は、1965 年にソ連の数学者ウラジーミル・レーベンシュタインが符号理論の文脈で定義した指標で、いまではスペル訂正・DNA 配列のアライメント・OCR の誤読補正・diff ツールの基礎として広く使われている。日本語のように 1 文字が大きな意味を持つテキストでは、1 編集の重みが英単語よりも大きく感じられるため、しきい値は英語データと別に決めるのが定石だ。距離そのものより「挿入・削除・置換のどれが支配的か」を見ると、ゆらぎの原因(変換ミスなのか、語尾の活用なのか)が読み取りやすくなる。