AZ Tools

字符串距离计算器

文本

输入两个字符串,按多种编辑距离指标查看其相距。**Levenshtein** 计算插入、删除、替换 — 经典拼写检查指标。**Damerau-Levenshtein** 还把相邻 transposition 计为一次编辑,更贴合打字错误。**Hamming** 逐位比较差异(仅在两串等长时定义)。**相似度百分比** 为 `(1 - levenshtein / max_length) * 100`,便于作记录去重的模糊匹配阈值。

相似度

57.1%

Levenshtein

3

Damerau-Lev.

3

Hamming

n/a

Damerau-Levenshtein 将 `ab → ba`(transposition)视为一次编辑;普通 Levenshtein 计为两次。Hamming 仅对等长字符串生效。

使用方法

  1. 输入或粘贴两个字符串。
  2. 查看每种距离指标与相似度 %。
  3. 模糊去重的起始阈值约 85%+,对容错搜索可更低。

常见问题

该用哪种指标?
对人类录入文本(常把相邻字符交换)用 Damerau-Levenshtein。对蛋白质序列或定长码用 Hamming。其它一切(URL slug、姓名、自由文本)Levenshtein 是安全默认 — 多数拼写检查库内部也用它。
相似度 % 与距离如何关联?
为归一化的 Levenshtein:100% 表示相同,0% 表示每个字符都需替换。分母是两串中较长者,所以 `cat` 对 `dog` 是 0%(3 编辑/3 字)而 `cat` 对 `catt` 是 75%(1 编辑/4 字)。
为何 Hamming 有时为 'n/a'?
Hamming 距离仅对等长字符串定义。长度不同则没有有意义的逐位比较 — 请用 Levenshtein。
区分大小写吗?
区分。`Cat` 对 `cat` 的 Levenshtein 距离为 1。若要不区分大小写,请先将两输入小写化。

相关工具