Package org.apache.lucene.analysis.pattern

# Class PatternReplaceFilter

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

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

public final class PatternReplaceFilter extends TokenFilter
A TokenFilter which applies a Pattern to each token in the stream, replacing match occurrences with the specified replacement string.

Note: Depending on the input and the pattern used and the input TokenStream, this TokenFilter may produce Tokens whose text is the empty string.

See Also:
  - `Pattern`

## Nested Class Summary

## 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
`PatternReplaceFilter(TokenStream in, Pattern p, String replacement, boolean all)`
Constructs an instance to replace either the first, or all occurrences

## Method Summary

Modifier and Type
Method
Description
`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

### PatternReplaceFilter

public PatternReplaceFilter(TokenStream in, Pattern p, String replacement, boolean all)
Constructs an instance to replace either the first, or all occurrences

Parameters:
  `in` - the TokenStream to process
  `p` - the patterm to apply to each Token
  `replacement` - the "replacement string" to substitute, if null a blank string will be used. Note that this is not the literal string that will be used, '$' and '\' have special meaning.
  `all` - if true, all matches will be replaced otherwise just the first match.
See Also:
  - `Matcher.quoteReplacement(java.lang.String)`

## Method Details

### incrementToken

public boolean incrementToken() throws IOException

Specified by:
  `incrementToken` in class `TokenStream`
Throws:
  `IOException`