org.apache.lucene.search.regex
Class RegexQuery

java.lang.Object
  extended by org.apache.lucene.search.Query
      extended by org.apache.lucene.search.MultiTermQuery
          extended by org.apache.lucene.search.regex.RegexQuery
All Implemented Interfaces:
Serializable, Cloneable, RegexQueryCapable

public class RegexQuery
extends MultiTermQuery
implements RegexQueryCapable

Implements the regular expression term search query. The expressions supported depend on the regular expression implementation used by way of the RegexCapabilities interface.

See Also:
RegexTermEnum, Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class org.apache.lucene.search.MultiTermQuery
MultiTermQuery.ConstantScoreAutoRewrite, MultiTermQuery.RewriteMethod, MultiTermQuery.TopTermsBoostOnlyBooleanQueryRewrite, MultiTermQuery.TopTermsScoringBooleanQueryRewrite
 
Field Summary
 
Fields inherited from class org.apache.lucene.search.MultiTermQuery
CONSTANT_SCORE_AUTO_REWRITE_DEFAULT, CONSTANT_SCORE_BOOLEAN_QUERY_REWRITE, CONSTANT_SCORE_FILTER_REWRITE, rewriteMethod, SCORING_BOOLEAN_QUERY_REWRITE
 
Constructor Summary
RegexQuery(Term term)
          Constructs a query for terms matching term.
 
Method Summary
 boolean equals(Object o)
           
protected  FilteredTermEnum getEnum(IndexReader reader)
          Construct the enumeration to be used, expanding the pattern term.
 RegexCapabilities getRegexImplementation()
           
 Term getTerm()
           
 int hashCode()
           
 void setRegexImplementation(RegexCapabilities impl)
          Defines which RegexCapabilities implementation is used by this instance.
 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
clearTotalNumberOfTerms, getRewriteMethod, getTotalNumberOfTerms, incTotalNumberOfTerms, rewrite, setRewriteMethod
 
Methods inherited from class org.apache.lucene.search.Query
clone, combine, createWeight, extractTerms, getBoost, getSimilarity, mergeBooleanQueries, setBoost, toString, weight
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

RegexQuery

public RegexQuery(Term term)
Constructs a query for terms matching term.

Method Detail

getTerm

public Term getTerm()

setRegexImplementation

public void setRegexImplementation(RegexCapabilities impl)
Defines which RegexCapabilities implementation is used by this instance.

Specified by:
setRegexImplementation in interface RegexQueryCapable
Parameters:
impl -

getRegexImplementation

public RegexCapabilities getRegexImplementation()
Specified by:
getRegexImplementation in interface RegexQueryCapable
Returns:
The implementation used by this instance.

getEnum

protected FilteredTermEnum getEnum(IndexReader reader)
                            throws IOException
Description copied from class: MultiTermQuery
Construct the enumeration to be used, expanding the pattern term.

Specified by:
getEnum in class MultiTermQuery
Throws:
IOException

toString

public String toString(String field)
Description copied from class: Query
Prints a query to a string, with field assumed to be the default field and omitted.

The representation used is one that is supposed to be readable by QueryParser. However, there are the following limitations:

Specified by:
toString in class Query

equals

public boolean equals(Object o)
Overrides:
equals in class MultiTermQuery

hashCode

public int hashCode()
Overrides:
hashCode in class MultiTermQuery