Class RegexCompletionQuery
- java.lang.Object
-
- org.apache.lucene.search.Query
-
- org.apache.lucene.search.suggest.document.CompletionQuery
-
- org.apache.lucene.search.suggest.document.RegexCompletionQuery
-
public class RegexCompletionQuery extends CompletionQuery
ACompletionQuery
which takes a regular expression as the prefix of the query term.Example usage of querying a prefix of 'sug' and 'sub' as a regular expression against a suggest field 'suggest_field':
CompletionQuery query = new RegexCompletionQuery(new Term("suggest_field", "su[g|b]"));
See
RegExp
for the supported regular expression syntax- WARNING: This API is experimental and might change in incompatible ways in the next release.
-
-
Constructor Summary
Constructors Constructor Description RegexCompletionQuery(Term term)
CallsRegexCompletionQuery(Term, BitsProducer)
with no filterRegexCompletionQuery(Term term, int flags, int determinizeWorkLimit)
CallsRegexCompletionQuery(Term, int, int, BitsProducer)
with no filterRegexCompletionQuery(Term term, int flags, int determinizeWorkLimit, BitsProducer filter)
Constructs a regular expression completion queryRegexCompletionQuery(Term term, BitsProducer filter)
CallsRegexCompletionQuery(Term, int, int, BitsProducer)
enabling all optional regex syntax anddeterminizeWorkLimit
of 10000
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Weight
createWeight(IndexSearcher searcher, ScoreMode scoreMode, float boost)
boolean
equals(Object o)
int
getDeterminizeWorkLimit()
Get the maximum effort permitted to determinize the automatonint
getFlags()
Get the regex flagsint
hashCode()
void
visit(QueryVisitor visitor)
-
Methods inherited from class org.apache.lucene.search.suggest.document.CompletionQuery
getField, getFilter, getTerm, rewrite, toString
-
Methods inherited from class org.apache.lucene.search.Query
classHash, sameClassAs, toString
-
-
-
-
Constructor Detail
-
RegexCompletionQuery
public RegexCompletionQuery(Term term)
CallsRegexCompletionQuery(Term, BitsProducer)
with no filter
-
RegexCompletionQuery
public RegexCompletionQuery(Term term, BitsProducer filter)
CallsRegexCompletionQuery(Term, int, int, BitsProducer)
enabling all optional regex syntax anddeterminizeWorkLimit
of 10000
-
RegexCompletionQuery
public RegexCompletionQuery(Term term, int flags, int determinizeWorkLimit)
CallsRegexCompletionQuery(Term, int, int, BitsProducer)
with no filter
-
RegexCompletionQuery
public RegexCompletionQuery(Term term, int flags, int determinizeWorkLimit, BitsProducer filter)
Constructs a regular expression completion query- Parameters:
term
- query is run againstTerm.field()
andTerm.text()
is interpreted as a regular expressionflags
- used as syntax_flag inRegExp(String, int)
determinizeWorkLimit
- used inRegExp.toAutomaton(int)
filter
- used to query on a sub set of documents
-
-
Method Detail
-
createWeight
public Weight createWeight(IndexSearcher searcher, ScoreMode scoreMode, float boost) throws IOException
- Overrides:
createWeight
in classQuery
- Throws:
IOException
-
getFlags
public int getFlags()
Get the regex flags
-
getDeterminizeWorkLimit
public int getDeterminizeWorkLimit()
Get the maximum effort permitted to determinize the automaton
-
visit
public void visit(QueryVisitor visitor)
-
-