Package org.apache.lucene.analysis.pattern

# Class PatternTypingFilter

java.lang.Object
org.apache.lucene.util.AttributeSource
org.apache.lucene.analysis.TokenStream
org.apache.lucene.analysis.TokenFilter
org.apache.lucene.analysis.pattern.PatternTypingFilter

All Implemented Interfaces:
  `Closeable`, `AutoCloseable`, `Unwrappable<TokenStream>`

public class PatternTypingFilter extends TokenFilter
Set a type attribute to a parameterized value when tokens are matched by any of a several regex patterns. The value set in the type attribute is parameterized with the match groups of the regex used for matching. In combination with TypeAsSynonymFilter and DropIfFlagged filter this can supply complex synonym patterns that are protected from subsequent analysis, and optionally drop the original term based on the flag set in this filter. See `PatternTypingFilterFactory` for full documentation.

Since:
  8.8.0
See Also:
  - `PatternTypingFilterFactory`

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `static final record`
  `PatternTypingFilter.PatternTypingRule`
  Value holding class for pattern typing rules.

  ## Nested classes/interfaces inherited from class org.apache.lucene.util.AttributeSource

  `AttributeSource.State`

- ## Field Summary

  ### Fields inherited from class org.apache.lucene.analysis.TokenFilter

  `input`

  ### Fields inherited from class org.apache.lucene.analysis.TokenStream

  `DEFAULT_TOKEN_ATTRIBUTE_FACTORY`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `PatternTypingFilter(TokenStream input, PatternTypingFilter.PatternTypingRule... replacementAndFlagByPattern)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `final boolean`
  `incrementToken()`

  ### Methods inherited from class org.apache.lucene.analysis.TokenFilter

  `close, end, reset, unwrap`

  ### Methods inherited from class org.apache.lucene.util.AttributeSource

  `addAttribute, addAttributeImpl, captureState, clearAttributes, cloneAttributes, copyTo, endAttributes, equals, getAttribute, getAttributeClassesIterator, getAttributeFactory, getAttributeImplsIterator, hasAttribute, hasAttributes, hashCode, reflectAsString, reflectWith, removeAllAttributes, restoreState, toString`

  ### Methods inherited from class java.lang.Object

  `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- ## Constructor Details

  - ### PatternTypingFilter

    public PatternTypingFilter(TokenStream input, PatternTypingFilter.PatternTypingRule... replacementAndFlagByPattern)

- ## Method Details

  - ### incrementToken

    public final boolean incrementToken() throws IOException
    Specified by:
      `incrementToken` in class `TokenStream`
    Throws:
      `IOException`