org.apache.lucene.sandbox.queries.regex

## Class JakartaRegexpCapabilities

- java.lang.Object
- - org.apache.lucene.sandbox.queries.regex.JakartaRegexpCapabilities

All Implemented Interfaces:
  RegexCapabilities

    public class JakartaRegexpCapabilities
    extends Object
    implements RegexCapabilities

Implementation tying Jakarta Regexp to RegexQuery. Jakarta Regexp internally supports a `RegexCapabilities.RegexMatcher.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.

### Nested Class Summary

### Nested classes/interfaces inherited from interface org.apache.lucene.sandbox.queries.regex.RegexCapabilities

`RegexCapabilities.RegexMatcher`

### Field Summary

Fields
`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

Constructors
Constructor and Description
`JakartaRegexpCapabilities()` Constructs a RegexCapabilities with the default MATCH_NORMAL match style.
`JakartaRegexpCapabilities(int flags)` Constructs a RegexCapabilities with the provided match flags.

### Method Summary

Methods
`RegexCapabilities.RegexMatcher` `compile(String regex)` Called by the constructor of `RegexTermsEnum` allowing implementations to cache a compiled version of the regular expression pattern.
`boolean` `equals(Object obj)`
`int` `hashCode()`

### 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 RegexCapabilities.RegexMatcher compile(String regex)

Description copied from interface: `RegexCapabilities`
Called by the constructor of `RegexTermsEnum` allowing implementations to cache a compiled version of the regular expression pattern.

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

#### hashCode

    public int hashCode()

Overrides:
  `hashCode` in class `Object`

#### equals

    public boolean equals(Object obj)

Overrides:
  `equals` in class `Object`