3

我正在编写的程序需要执行复杂的搜索查询。一个例子是

(蓝色和牛仔裤而不是(便宜|| 昂贵))。我怎样才能做到这一点。我知道有诸如 hq 和 exclude 和 orTerms (或只是布尔运算符)之类的参数,但我不知道如何组合它们,或者它们是否可以为此组合。

谢谢一堆

4

1 回答 1

7

参数在此处描述。

q(字符串)
搜索表达式。

exactTerms (string)
标识搜索结果中的所有文档都必须包含的短语。

excludeTerms (string)
标识不应出现在搜索结果的任何文档中的单词或短语。

orTerms (string)
提供要在文档中检查的附加搜索词,其中搜索结果中的每个文档必须至少包含一个附加搜索词。

这里描述了不同的布尔运算符。

AND
includeTerms=(phrase%20one).(phrase%20two)


q=key1%20(-key2)


excludeTerms=key1|key2或Terms
=key1|key2

()
lr=-(lang_fr|lang_it)

你可以调用q=john%20doe&orTerms=wikipedia|imdb它,这将产生包含john AND doe AND ( wikipedia OR imbd ).

我没想到的是q=&exactTerms=(john).(doe).(wikipedia)(46 个结果)返回的结果与q="john%20doe%20wikipedia"(46 个结果)相同。我认为它的结果与q="john"%20"doe"%20"wikipedia"(153000 个结果)相同。因此,它有时更像是一个 CONCAT 而非 AND 运算符,或者exactTerms根本无法支持多个关键字。

于 2015-03-25T11:37:37.577 回答