字符串匹配技术转换为数字?

时间:2009-07-24 12:13:58

标签: string pattern-matching string-matching

我有各种长度字符串,其中充满了Base64字符。实际上,他们的音频识别数据因歌曲而异。

为了轻松比较这些字符串的部分,我将它们分成16个字符串子字符串。 (这是一首歌的大约1秒)但在某些情况下,我只能无法比较这些,我应该测量它们。

例如,与“hellohellohelloo”和“hallohellohelloo”进行比较时,应该获得更接近的值,然后进行“hellohellohelloo”和“herehellohelloo”比较。

是否有任何算法或理论


编辑:抱歉,我是新来的:)我无法说清楚。这里有一些评论会让我明白并提出一个想法。

评论1:

实际上我知道Levenshtein距离,但问题是我每次比较两个字符串,我必须建立比较矩阵,这使得搜索过程变慢。如果我可以将例如hello转换为4444并将hallo转换为4443,我可以通过索引数值来确定我对'hello'的记录有多接近。

评论2:

也许我应该确定一个基本的常量长度字符串,并将它们的距离值存储为字符串的索引值。这只是一个想法?!

2 个答案:

答案 0 :(得分:0)

Levenshtein的距离可能会帮助你:http://en.wikipedia.org/wiki/Levenshtein_distance

它通常非常快,并且在大多数现代语言中都有实现。

答案 1 :(得分:0)

Levenshtein distance可能适合您。另请参阅维基百科对edit distance的概述。