GAE全文搜索:只能匹配确切的单词?如何搜索包含(...)?

时间:2013-05-08 09:03:33

标签: google-app-engine full-text-search

刚试过GAE(1.7.7 Java)全文搜索,发现搜索字符串是否为work,令人惊讶的是 匹配working,{{1} },或workedhardworking,我想知道如果我错过API中的内容,我会阅读教程,但除了复数匹配之外没有找到任何关于此的文档。

感谢。

P.S。我尝试了搜索服务的单元测试,而不是在工作环境中。

2 个答案:

答案 0 :(得分:0)

隐藏在文档中(但遗憾的是不在运算符表中),有一个'〜'运算符

要搜索精确查询的多个变体,请使用〜运算符:

〜“car”#搜索“car”和“cars”

不确定能让你走多远。不幸的是关于它。

请参阅https://developers.google.com/appengine/docs/java/search/overview#Queries_on_Fields

关于这方面的文档很少,但只是尝试了它,它只适用于复数。

一种方法是对文档中的单词进行自己的处理,(尽管你不会将其作为文本返回;-)然后你可以在搜索词上执行词干并且能够匹配工作,工作等。

答案 1 :(得分:0)

这是一个迟到的答案,但是为了跟进上一个答案,基本API函数无法实现您想要做的事情。搜索API适用于全文搜索原则。为了解决这个问题,您可以将您的可搜索数据预先标记为索引,并将其存储在包含相关文档的字段中。

请参阅:Partial matching GAE search API