如何确定字符串dna与另一个相似

Pau*_*lan 12 string algorithm hash comparison

我希望我正确地措辞这一点,以了解我正在寻找的东西.

我需要比较两段文字.如果这两个字符串是相似的,我想得到非常相似的分数,如果字符串非常不同,我需要非常不同的分数.

如果我采用电子邮件的md5哈希值并更改一个字符,哈希值会发生显着变化,我希望某些内容不会发生太大变化.我需要比较两个内容的相似程度,而不存储字符串.

更新:我现在正在考虑结合人们提供的各种链接中的一些想法.理想情况下,我会喜欢一个输入函数来创建我的分数所以我正在寻找使用引用字符串来始终比较我的输入.我也在考虑收集asci角色并总结这些.仍在阅读所有提供的链接.

Ant*_*lev 10

您正在寻找的是LCS算法(另请参阅Levenshtein距离).您也可以尝试Soundex或其他一些语音算法.


eri*_*son 6

阅读您的评论,听起来您实际上正在尝试比较整个文档,每个文档包含许多单词.

通过将文档视为空间中的N维点,这在信息检索系统中成功完成.语言中的每个单词都是一个轴.沿轴的距离由该单词出现在文档中的次数确定.然后类似的文件在空间中彼此"靠近".

这样,整个文档不需要存储,只需要存储它的字数.通常,语言中最常见的单词根本不计算在内.