Package org.apache.lucene.analysis

# Class StopFilter

java.lang.Object
org.apache.lucene.util.AttributeSource
org.apache.lucene.analysis.TokenStream
org.apache.lucene.analysis.TokenFilter
org.apache.lucene.analysis.FilteringTokenFilter
org.apache.lucene.analysis.StopFilter

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

public class StopFilter extends FilteringTokenFilter
Removes stop words from a token stream.

## 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
`StopFilter(TokenStream in, CharArraySet stopWords)`
Constructs a filter which removes words from the input TokenStream that are named in the Set.

## Method Summary

Modifier and Type
Method
Description
`protected boolean`
`accept()`
Returns the next input Token whose term() is not a stop word.
`static CharArraySet`
`makeStopSet(String... stopWords)`
Builds a Set from an array of stop words, appropriate for passing into the StopFilter constructor.
`static CharArraySet`
`makeStopSet(String[] stopWords, boolean ignoreCase)`
Creates a stopword set from the given stopword array.
`static CharArraySet`
`makeStopSet(List<?> stopWords)`
Builds a Set from an array of stop words, appropriate for passing into the StopFilter constructor.
`static CharArraySet`
`makeStopSet(List<?> stopWords, boolean ignoreCase)`
Creates a stopword set from the given stopword list.

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

`end, incrementToken, reset`

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

`close, 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

### StopFilter

public StopFilter(TokenStream in, CharArraySet stopWords)
Constructs a filter which removes words from the input TokenStream that are named in the Set.

Parameters:
  `in` - Input stream
  `stopWords` - A `CharArraySet` representing the stopwords.
See Also:
  - `makeStopSet(java.lang.String...)`

## Method Details

### makeStopSet

public static CharArraySet makeStopSet(String... stopWords)
Builds a Set from an array of stop words, appropriate for passing into the StopFilter constructor. This permits this stopWords construction to be cached once when an Analyzer is constructed.

Parameters:
  `stopWords` - An array of stopwords
See Also:
  - `passing false to ignoreCase`

### makeStopSet

public static CharArraySet makeStopSet(List<?> stopWords)
Builds a Set from an array of stop words, appropriate for passing into the StopFilter constructor. This permits this stopWords construction to be cached once when an Analyzer is constructed.

Parameters:
  `stopWords` - A List of Strings or char[] or any other toString()-able list representing the stopwords
Returns:
  A Set (`CharArraySet`) containing the words
See Also:
  - `passing false to ignoreCase`

### makeStopSet

public static CharArraySet makeStopSet(String[] stopWords, boolean ignoreCase)
Creates a stopword set from the given stopword array.

Parameters:
  `stopWords` - An array of stopwords
  `ignoreCase` - If true, all words are lower cased first.
Returns:
  a Set containing the words

### makeStopSet

public static CharArraySet makeStopSet(List<?> stopWords, boolean ignoreCase)
Creates a stopword set from the given stopword list.

Parameters:
  `stopWords` - A List of Strings or char[] or any other toString()-able list representing the stopwords
  `ignoreCase` - if true, all words are lower cased first
Returns:
  A Set (`CharArraySet`) containing the words

### accept

protected boolean accept()
Returns the next input Token whose term() is not a stop word.

Specified by:
  `accept` in class `FilteringTokenFilter`