将不存在的域名更正为最接近的匹配

时间:2012-10-10 14:22:55

标签: error-correction

我正在寻找能够告诉您最近匹配的不存在的域的服务,因为它被用户拼错了。例如,如果用户写'hotmail.con',则发送一个查询并获取结果'hotmail.com'。

1 个答案:

答案 0 :(得分:2)

你选择了一个难题。一个域长度可以是1-63个字符,应包含字符[a-z0-9-],并且不能以连字符开头。暴力迫使它不是一种选择。如果用户输入hotmail.con,您可以搜索它的拼写错误,这会尝试homail.comhotmale.com,这可能是也可能不是准确的域名,谁知道错误的拼写是纠正一个?计算机必须向用户返回一个选项列表:“您的意思是这个域名,还是可能或那个域名?”。

你可能会对Peter Norvig的拼写纠正器感兴趣,Google会使用该拼写纠正器来检查来自的查询。它是地球上最好的拼写纠正器之一。

http://norvig.com/spell-correct.html

如果您拥有一组最新的正确域名,Peter Norvig的拼写检查程序应该可以正常工作。您可以动态创建自己的列表,方法是保留用户所访问过的站点的列表,并使用这些列表作为域名正文进行检查。这样,当用户选择“hotmail.con”时,它会在列表中找到hotmail.com。但是,这并不能保护用户不会意外访问:“hotmale.com”。因为那是一个有效的网站。

这是关于如何获取所有域名的stackoverflow qustion:

https://stackoverflow.com/questions/4539155/how-to-get-all-the-domain-names

最好的想法就是在盒子外面思考并像firefox那样做。当用户开始输入hotmail.com时,他们通常会点击一个文本框,输入“h”,然后输入“o”。有一个下拉列表与最近访问过的域名一起出现。

相关问题