检测拼写错误的单词

时间:2009-03-30 17:31:00

标签: algorithm language-agnostic spell-checking search-suggestion

我有一个机场名称列表,我的用户可以输入一个机场名称来选择它以便进一步处理。

您如何处理拼写错误的名字并提出建议清单?

8 个答案:

答案 0 :(得分:7)

查找Levenshtein distances以匹配给定用户输入的正确名称。

答案 1 :(得分:4)

http://norvig.com/spell-correct.html
做了类似levenshtein的事情但是,因为他不会一路走下去,效率更高

答案 2 :(得分:1)

在代码中使用拼写检查。单词列表应仅包含正确的机场拼写。

这不是一个很好的方法。您应该选择提供自动完成选项的控件,或者按照其他人的建议选择下拉。

如果您的技术支持,请使用AJAX。

答案 3 :(得分:1)

我知道这不是你问的问题,但是如果这是一个重要的机场(例如预订机票)的应用程序,那么你可能想要一个确认阶段,以确保你有正确的机场。例如,有人获得wrong Sydney的门票。

答案 4 :(得分:0)

最好让用户从机场名称列表中进行选择,而不是让他们自己输入。没有错误可以这样做。

答案 5 :(得分:0)

虽然它不会马上帮助,但您可以跟踪拼写错误,并在输入正确的名称时查看他们最终输入的名称。这样您就可以跟踪最常见的拼写错误,并提供最佳选择。

答案 6 :(得分:0)

根据Kevin的建议,如果你使用带有javascript自动完成功能的输入框,它可能是两全其美的。例如jquery autocomplete

编辑:丹麦人打败了我:(

答案 7 :(得分:0)

您可以使用现有的拼写检查库。做好这类事情的代码并非易事。如果您确实想自己编写,可能需要查看dictionary trie's

可能有效的一种方法是生成一个巨大的可能错误单词列表及其更正(这里是implementation in Python),您可以缓存这些单词以获得更高的性能。