我们在对 Google 自定义搜索的 XML 结果中的查询进行自动拼写检查时遇到问题。
拼写错误的查询以正确的拼写返回结果,例如socer
变为soccer
并返回正确的结果。nfpr=1
在 Google.com 上,可以选择使用查询字符串搜索原始查询的结果。但是,这在 Google 自定义搜索中不起作用,而且我找不到任何其他方法来搜索不正确的拼写。
我们在对 Google 自定义搜索的 XML 结果中的查询进行自动拼写检查时遇到问题。
拼写错误的查询以正确的拼写返回结果,例如socer
变为soccer
并返回正确的结果。nfpr=1
在 Google.com 上,可以选择使用查询字符串搜索原始查询的结果。但是,这在 Google 自定义搜索中不起作用,而且我找不到任何其他方法来搜索不正确的拼写。
对于标准的 google 搜索,可以通过将参数 &nfpr=1 添加到查询 url 来避免这种行为。
对于基于 AJAX API 的自定义搜索,遗憾的是这是不可能的。我发现的唯一方法是使用 javascript 来解析用户的查询,然后使用正则表达式在每个尚未引用的单词周围加上引号。例如,如果收到的关键字是
《宝马z4》说明书
你会把它改成
“宝马z4”“手册”
它具有相同的效果,只是它禁用了自动更正。不幸的是,如果您想处理高级逻辑语法(AND、OR、|、- 等)的所有特殊情况,您的正则表达式会变得有点复杂。
我自己,我只是解析来自 Google 的响应以查看是否发生这种情况,如果发生这种情况,请通知用户如何防止它(通过在有问题的单词周围加上引号)。