字符串相似度

视图模式:

请在两个字段中各输入一个字符串以查看结果。

洞察

试试预设字符串对

速查表(六种算法)
Levenshtein 距离
3
0 to max(|A|, |B|)Typo detection at the character level
Damerau–Levenshtein 距离
1
0 to max(|A|, |B|)Typo detection including adjacent-character transpositions
Sørensen–Dice 系数
~0.3
0 to 1Fuzzy duplicate detection and near-duplicate identification
Soundex 编码
S530 / S530
4-character LDDD codeAmerican English surname matching in legacy systems
Metaphone 编码
0MPSN / TMSN
variable-length letter codeGeneral English phonetic matching — sharper than Soundex
科隆音标(Kölner Phonetik)
657 / 657
variable-length numeric codeGerman name and address matching — handles umlauts and sharp-s

关于字符串相似度

字符串相似度工具使用六种经典算法比较两个字符串,并在算法之间出现分歧时给出提示。可用于拼写错误检测、姓名匹配、重复检测,或任何需要回答"这两个字符串有多接近——按字母、按编辑距离还是按发音?"的场景。

六种算法

  • Levenshtein 距离——将一个字符串变为另一个字符串所需的最少单字符编辑次数。
  • Damerau–Levenshtein 距离——Levenshtein 加上相邻字符调换(特别适合 "teh" 与 "the" 这类调换错误)。
  • Sørensen–Dice 系数——字符 bigram 重叠度,范围 [0, 1](模糊重复检测的主力算法)。
  • Soundex——经典美式英语语音编码(LDDD 格式),被美国人口普查采用。
  • Metaphone——更精确的英语语音编码,由 Lawrence Philips 于 1990 年设计。
  • 科隆音标——德语语音编码(Kölner Phonetik),德语姓名匹配的标准算法。

算法分歧时工具会提示

每个结果行都配有通俗解释、"最佳用途"提示和详细描述。洞察面板会展示有趣的分歧情况:"发音相同,拼写不同"(应使用语音算法)、"字符和 bigram 层面都很接近"(可能是真正的近似重复)、"尽管拼写不同但语音匹配"(应使用语音算法)、"此输入的语音编码可能不具有参考价值"(输入为非拉丁字符时)。

常见用途

  • 检测用户输入中的拼写错误。
  • 按姓名匹配客户记录(特别是使用 Soundex / Metaphone / 科隆音标)。
  • 识别数据库中的近似重复条目。
  • 为下游任务选择合适的相似度算法。
  • 验证德语 / 英语姓名的不同拼写是否映射到相同的语音编码。

所有六种算法都在浏览器中运行,任何字符串、结果或预设描述都不会离开你的设备。

评论

请接受“功能性”Cookie 类别以查看和发表评论。