|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.lucene.search.Query
org.apache.lucene.search.MultiTermQuery
org.apache.lucene.search.AutomatonQuery
public class AutomatonQuery
A Query
that will match terms against a finite-state machine.
This query will match documents that contain terms accepted by a given
finite-state machine. The automaton can be constructed with the
org.apache.lucene.util.automaton
API. Alternatively, it can be
created from a regular expression with RegexpQuery
or from
the standard Lucene wildcard syntax with WildcardQuery
.
When the query is executed, it will create an equivalent DFA of the
finite-state machine, and will enumerate the term dictionary in an
intelligent way to reduce the number of comparisons. For example: the regular
expression of [dl]og?
will make approximately four comparisons:
do, dog, lo, and log.
Nested Class Summary |
---|
Nested classes/interfaces inherited from class org.apache.lucene.search.MultiTermQuery |
---|
MultiTermQuery.ConstantScoreAutoRewrite, MultiTermQuery.RewriteMethod, MultiTermQuery.TopTermsBoostOnlyBooleanQueryRewrite, MultiTermQuery.TopTermsScoringBooleanQueryRewrite |
Field Summary | |
---|---|
protected Automaton |
automaton
the automaton to match index terms against |
protected CompiledAutomaton |
compiled
|
protected Term |
term
term containing the field, and possibly some pattern structure |
Fields inherited from class org.apache.lucene.search.MultiTermQuery |
---|
CONSTANT_SCORE_AUTO_REWRITE_DEFAULT, CONSTANT_SCORE_BOOLEAN_QUERY_REWRITE, CONSTANT_SCORE_FILTER_REWRITE, field, rewriteMethod, SCORING_BOOLEAN_QUERY_REWRITE |
Constructor Summary | |
---|---|
AutomatonQuery(Term term,
Automaton automaton)
Create a new AutomatonQuery from an Automaton . |
Method Summary | |
---|---|
boolean |
equals(Object obj)
|
Automaton |
getAutomaton()
Returns the automaton used to create this query |
protected TermsEnum |
getTermsEnum(Terms terms,
AttributeSource atts)
Construct the enumeration to be used, expanding the pattern term. |
int |
hashCode()
|
String |
toString(String field)
Prints a query to a string, with field assumed to be the
default field and omitted. |
Methods inherited from class org.apache.lucene.search.MultiTermQuery |
---|
getField, getRewriteMethod, getTermsEnum, rewrite, setRewriteMethod |
Methods inherited from class org.apache.lucene.search.Query |
---|
clone, createWeight, extractTerms, getBoost, setBoost, toString |
Methods inherited from class java.lang.Object |
---|
finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
protected final Automaton automaton
protected final CompiledAutomaton compiled
protected final Term term
Constructor Detail |
---|
public AutomatonQuery(Term term, Automaton automaton)
Automaton
.
term
- Term containing field and possibly some pattern structure. The
term text is ignored.automaton
- Automaton to run, terms that are accepted are considered a
match.Method Detail |
---|
protected TermsEnum getTermsEnum(Terms terms, AttributeSource atts) throws IOException
MultiTermQuery
TermsEnum.EMPTY
if no
terms match). The TermsEnum must already be
positioned to the first matching term.
The given AttributeSource
is passed by the MultiTermQuery.RewriteMethod
to
provide attributes, the rewrite method uses to inform about e.g. maximum competitive boosts.
This is currently only used by TopTermsRewrite
getTermsEnum
in class MultiTermQuery
IOException
public int hashCode()
hashCode
in class MultiTermQuery
public boolean equals(Object obj)
equals
in class MultiTermQuery
public String toString(String field)
Query
field
assumed to be the
default field and omitted.
toString
in class Query
public Automaton getAutomaton()
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |