【问题标题】:Searching Array for similar spelled words/objects在数组中搜索相似的拼写单词/对象
【发布时间】:2011-11-24 01:49:49
【问题描述】:

我正在寻找类似于 Google 的“您的意思是:Word”的解决方案

我输入了一系列车辆

2011ChevroletMalibu
2011FordF150
2009FordProbe
etc...

在我的应用中,我有三个文本字段。

Year Make Model

当用户输入 2011 Chevrolet Malabu(注意 Malibu 拼写错误)并点击搜索时... 我想回复“您的意思是:2011 Chevrolet Malibu”。 有人对如何“搜索相似”有任何建议吗?谢谢!

【问题讨论】:

    标签: iphone ios ios4


    【解决方案1】:

    iOS SDK 无法为您解决任何功能的 AFAIK - 但是,有许多算法可以做到这一点。

    注意:

    Phonetic Soundex String Comparison

    Levenshtein Distance

    Oliver 1993

    【讨论】:

      【解决方案2】:

      路易,我认为这不是很简单。您需要使用一些拼音搜索。如果您的应用程序使用 Web 服务提供的数据,并且您在该 Web 服务后面有一个 mssqlserver>=2000,则可以在搜索中使用 SOUNDEX 函数。但是如果你想,实现你自己的拼音搜索,这是一个很大的挑战。

      【讨论】:

      • 真正实现 soundex 比较并不难。如果您远程需要它,PHP 中的单行代码就可以了。
      【解决方案3】:

      查看 soundx “哈希”,或者如果您有 CPU,请查看 levenshtein 距离。 Soundx 的计算成本会更低,levenshtein 距离会提供更好的结果。

      【讨论】:

        猜你喜欢
        • 2021-10-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-04-25
        • 2018-07-25
        • 1970-01-01
        • 2018-10-24
        • 2018-05-20
        相关资源
        最近更新 更多