public class RegexCompletionQuery extends CompletionQuery
CompletionQuery 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
| Modifier and Type | Field and Description |
|---|---|
private int |
flags |
private int |
maxDeterminizedStates |
| Constructor and Description |
|---|
RegexCompletionQuery(Term term)
Calls
RegexCompletionQuery(Term, BitsProducer)
with no filter |
RegexCompletionQuery(Term term,
BitsProducer filter)
Calls
RegexCompletionQuery(Term, int, int, BitsProducer)
enabling all optional regex syntax and maxDeterminizedStates of
|
RegexCompletionQuery(Term term,
int flags,
int maxDeterminizedStates)
Calls
RegexCompletionQuery(Term, int, int, BitsProducer)
with no filter |
RegexCompletionQuery(Term term,
int flags,
int maxDeterminizedStates,
BitsProducer filter)
Constructs a regular expression completion query
|
| Modifier and Type | Method and Description |
|---|---|
Weight |
createWeight(IndexSearcher searcher,
ScoreMode scoreMode,
float boost)
Expert: Constructs an appropriate Weight implementation for this query.
|
boolean |
equals(java.lang.Object o)
Override and implement query instance equivalence properly in a subclass.
|
int |
getFlags()
Get the regex flags
|
int |
getMaxDeterminizedStates()
Get the maximum number of states permitted in the determinized automaton
|
int |
hashCode()
Override and implement query hash code properly in a subclass.
|
void |
visit(QueryVisitor visitor)
Recurse through the query tree, visiting any child queries
|
getField, getFilter, getTerm, rewrite, toStringclassHash, sameClassAs, toStringprivate final int flags
private final int maxDeterminizedStates
public RegexCompletionQuery(Term term)
RegexCompletionQuery(Term, BitsProducer)
with no filterpublic RegexCompletionQuery(Term term, BitsProducer filter)
RegexCompletionQuery(Term, int, int, BitsProducer)
enabling all optional regex syntax and maxDeterminizedStates of
public RegexCompletionQuery(Term term, int flags, int maxDeterminizedStates)
RegexCompletionQuery(Term, int, int, BitsProducer)
with no filterpublic RegexCompletionQuery(Term term, int flags, int maxDeterminizedStates, BitsProducer filter)
term - query is run against Term.field() and Term.text()
is interpreted as a regular expressionflags - used as syntax_flag in RegExp.RegExp(String, int)maxDeterminizedStates - used in RegExp.toAutomaton(int)filter - used to query on a sub set of documentspublic Weight createWeight(IndexSearcher searcher, ScoreMode scoreMode, float boost) throws java.io.IOException
QueryOnly implemented by primitive queries, which re-write to themselves.
createWeight in class QueryscoreMode - How the produced scorers will be consumed.boost - The boost that is propagated by the parent queries.java.io.IOExceptionpublic int getFlags()
public int getMaxDeterminizedStates()
public boolean equals(java.lang.Object o)
QueryQueryCache works properly.
Typically a query will be equal to another only if it's an instance of
the same class and its document-filtering properties are identical that other
instance. Utility methods are provided for certain repetitive code.equals in class QueryQuery.sameClassAs(Object),
Query.classHash()public int hashCode()
QueryQueryCache works properly.hashCode in class QueryQuery.equals(Object)public void visit(QueryVisitor visitor)
Query