【问题标题】:What are the practical usages of functions metaphone() and soundex() in PHP?PHP 中函数 metaphone() 和 soundex() 的实际用途是什么?
【发布时间】:2011-03-14 07:15:43
【问题描述】:

Metaphone 和 Soundex 是根据字符串的英语发音索引字符串的语音算法。

您是否使用过标准 PHP 库中的函数 metaphone()soundex()

为了什么?这些函数的实际用途是什么?

【问题讨论】:

    标签: php indexing phonetics metaphone


    【解决方案1】:

    您可以在执行拼写检查时使用这些。然后你可以很容易地发现它,例如“phorensics”与“forensics”非常匹配。

    【讨论】:

    • 这恰好是soundex的一个坏例子,因为前导字母始终是单词的第一个字母,所以phorensicsP652forensicsF652
    • 哦。 :) 好电话 - 这导致我拨打电话/电话(这可能是另一个不好的例子,具体取决于您说的语言!)。 metaphone 是如何处理我这个不可靠的例子的?
    • Phorensicsforensics 都使用 metaphone 返回 FRNSKS
    【解决方案2】:

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

    这可以在您只是试图找到“正确”拼写的情况之外使用。例如,它可能用于帮助发现错误,例如错误地使用了一个发音正确但拼写正确的单词。

    另一个吸引人的用途是尝试找到正确的名称。当我告诉某人我的名字是“Nicholas”时,我看到他们至少尝试使用两个“替代”拼写:Nicolas 和 Nikolas。当他们输入它并且在数据库中找不到我时,soundex 或 metaphone 可能会用来说“没有 Nicolas Knight,但有 Nicholas Knight”。

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

    【讨论】:

    • 现实生活中一个可能的例子是 Facebook,它很可能使用 soundex()metaphone()(或等效函数)来帮助搜索姓名,因为正如您所提到的,人们经常搜索基于人的只听他们名字的声音。
    猜你喜欢
    • 1970-01-01
    • 2011-10-29
    • 2012-07-19
    • 2011-04-25
    • 2011-04-02
    • 2019-05-17
    • 2015-04-22
    • 2021-07-22
    • 1970-01-01
    相关资源
    最近更新 更多