org.apache.lucene.search.regex
Class JakartaRegexpCapabilities

java.lang.Object
  extended by org.apache.lucene.search.regex.JakartaRegexpCapabilities
All Implemented Interfaces:
RegexCapabilities

public class JakartaRegexpCapabilities
extends Object
implements RegexCapabilities

Implementation tying Jakarta Regexp to RegexQuery. Jakarta Regepx internally supports a prefix() implementation which can offer performance gains under certain circumstances. Yet, the implementation appears to be rather shaky as it doesn't always provide a prefix even if one would exist.


Field Summary
static int FLAG_MATCH_CASEINDEPENDENT
          Flag to specify that matching should be case-independent (folded)
static int FLAG_MATCH_NORMAL
          Flag to specify normal, case-sensitive matching behaviour.
 
Constructor Summary
JakartaRegexpCapabilities()
          Constructs a RegexCapabilities with the default MATCH_NORMAL match style.
JakartaRegexpCapabilities(int flags)
          Constructs a RegexCapabilities with the provided match flags.
 
Method Summary
 void compile(String pattern)
          Called by the constructor of RegexTermEnum allowing implementations to cache a compiled version of the regular expression pattern.
 boolean equals(Object o)
           
 int hashCode()
           
 boolean match(String string)
           
 String prefix()
          A wise prefix implementation can reduce the term enumeration (and thus increase performance) of RegexQuery dramatically!
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

FLAG_MATCH_NORMAL

public static final int FLAG_MATCH_NORMAL
Flag to specify normal, case-sensitive matching behaviour. This is the default.

See Also:
Constant Field Values

FLAG_MATCH_CASEINDEPENDENT

public static final int FLAG_MATCH_CASEINDEPENDENT
Flag to specify that matching should be case-independent (folded)

See Also:
Constant Field Values
Constructor Detail

JakartaRegexpCapabilities

public JakartaRegexpCapabilities()
Constructs a RegexCapabilities with the default MATCH_NORMAL match style.


JakartaRegexpCapabilities

public JakartaRegexpCapabilities(int flags)
Constructs a RegexCapabilities with the provided match flags. Multiple flags should be ORed together.

Parameters:
flags - The matching style
Method Detail

compile

public void compile(String pattern)
Description copied from interface: RegexCapabilities
Called by the constructor of RegexTermEnum allowing implementations to cache a compiled version of the regular expression pattern.

Specified by:
compile in interface RegexCapabilities
Parameters:
pattern - regular expression pattern

match

public boolean match(String string)
Specified by:
match in interface RegexCapabilities
Returns:
true if string matches the pattern last passed to RegexCapabilities.compile(java.lang.String).

prefix

public String prefix()
Description copied from interface: RegexCapabilities
A wise prefix implementation can reduce the term enumeration (and thus increase performance) of RegexQuery dramatically!

Specified by:
prefix in interface RegexCapabilities
Returns:
static non-regex prefix of the pattern last passed to RegexCapabilities.compile(java.lang.String). May return null.

equals

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

hashCode

public int hashCode()
Overrides:
hashCode in class Object