2010-07-10 133 views

回答

5

更一般地说,soundex和metaphone可以用来查找当大声发音时听起来相似的字符串。

这可以用于你只是想找到一个“正确的”拼写的情况。例如,它可能被用来帮助发现一个错误,比如错误地使用拼写正确的单词,听起来像是正确的单词。

另一个吸引人的用途是尝试找到正确的名称。当我告诉某人我的名字是“尼古拉斯”时,我看到他们至少有两个“替代”拼写用法:尼古拉斯和尼古拉斯。当他们输入数据时,数据库中找不到我,soundex或metaphone可能用于说“没有尼古拉斯奈特,但有尼古拉斯奈特”。

然而,这些算法实际工作的程度有些值得商榷。他们偶尔会想出相当奇怪的结果。

+0

一个可能的现实生活中的例子是Facebook,它很可能使用'soundex()'或'metaphone()'(或等价的函数)来帮助搜索名字,因为正如你所提到的,人们经常只根据他们的名字的声音。 – Chaim 2011-11-02 19:47:47

2

执行拼写检查时可以使用这些。你可以很容易地发现,例如'phorensics'是'取证'的好搭档。

+0

这恰好是'soundex'的一个不好的例子,因为前导字母总是这个单词的第一个字母,所以'phorensics'是'P652'和'forensics'''是'F652''D'哦。' – 2010-07-10 17:32:49

+0

'哦。 :)良好的通话 - 这导致我的电话/电话(这可能是另一个坏例子,取决于您说的是哪种语言!)。 metaphone如何处理我的狡猾的例子? – 2010-07-10 17:50:47

+4

'Phorensics'和'forensics'都使用'metaphone'返回'FRNSKS'。 – Sam 2011-03-16 12:15:12

相关问题