使用ParserQuery的Lucene邻近搜索

时间:2019-03-17 01:13:36

标签: java maven lucene

我是Lucene的新手(实际上只是学习的第二天)。我想进行一次邻近搜索,例如1距离内的“ hello”和“ world”。我阅读了https://lucene.apache.org/core/2_9_4/queryparsersyntax.html#Proximity%20Searches网站,发现我必须做“ hello world”〜1。所以,我尝试的是

    QueryParser QP = new QueryParser("text", analyzer);
    Query qry = QP.parse("hello world"~1);

这给出了一个错误,所以我做了

    QueryParser QP = new QueryParser("text", analyzer);
    Query qry = QP.parse("hello world~1");

这没有给出错误,但没有给出我想要的答案。它返回一个布尔搜索结果,该结果只是带有“ hello”和“ world”的任何文档 因此,如果我猜对了,我打印qry并得到text:hello text:world~1而不是text:hello word~1

有人可以帮我使用QueryParser查找邻近搜索的代码吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

我会尝试

Query qry = QP.parse("\"hello world\"~1");