BooleanQuery booleanQuery11 = new BooleanQuery()
booleanQuery11.add(new TermQuery(new Term("contents", ”你“)), BooleanClause.Occur.MUST)
booleanQuery11.add(new TermQuery(new Term("contents", ”好“)), BooleanClause.Occur.MUST)
如果你就想搜索"",也就是说"你"和“好”这两个词同时出现并且紧挨着,那么采用PhraseQuery
PhraseQuery query333 = new PhraseQuery()
query333.setSlop(0)
query333.add(new Term("contents", ”你“);
query333.add(new Term("contents", ”好“);
这个要看你的搜索关键词是什么,采用的分词器是什么,比如你搜索的关键词是“搜索引擎”,如果采用的分词器的分词结果就包含“搜索引擎‘这个词,那么采用TermQuery就可以了;如果采用的分词器的分词结果不是“搜索引擎‘这个词,而是”搜索“和”引擎“这两个词,那么要采用PhraseQuery,setSlop(0),这样就可以搜索出同时包含”搜索“和”引擎“这两个词并且这两个词紧挨着的所有文章了。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)