lucene的MultiPhraseQuery

在lucene的search包下面发现一个新的类 MultiPhraseQuery

大致作用,猜测可以实现以下功能:

本来,要实现 "a (b|c|d) e" 这样一个语意的Query ,我猜测需要用 "a b e", "a c e" ,"a d e"三个PhraseQuery

来实现, 现在MultiPhraseQuery实现了这样一个方法  

public void add(Term[] terms, int position)

 

也就是说,可以在原来的PhraseQuery中的任意位置添加更多的term

于是也就可以方便的实现"a (b|c|d) e"这样的查询语意了。 

 

总结: MultiPhraseQuery是个很不错的新功能

你可能感兴趣的:(C++,c,C#,Lucene)