Class CapitalizationFilter
java.lang.Object
org.apache.lucene.util.AttributeSource
org.apache.lucene.analysis.TokenStream
org.apache.lucene.analysis.TokenFilter
org.apache.lucene.analysis.miscellaneous.CapitalizationFilter
- All Implemented Interfaces:
Closeable
,AutoCloseable
,Unwrappable<TokenStream>
A filter to apply normal capitalization rules to Tokens. It will make the first letter capital
and the rest lower case.
This filter is particularly useful to build nice looking facet parameters. This filter is not appropriate if you intend to use a prefix query.
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.lucene.util.AttributeSource
AttributeSource.State
-
Field Summary
Modifier and TypeFieldDescriptionstatic final int
static final int
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
ConstructorDescriptionCreates a CapitalizationFilter with the default parameters.CapitalizationFilter
(TokenStream in, boolean onlyFirstWord, CharArraySet keep, boolean forceFirstLetter, Collection<char[]> okPrefix, int minWordLength, int maxWordCount, int maxTokenLength) Creates a CapitalizationFilter with the specified parameters. -
Method Summary
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
-
Field Details
-
DEFAULT_MAX_WORD_COUNT
public static final int DEFAULT_MAX_WORD_COUNT- See Also:
-
DEFAULT_MAX_TOKEN_LENGTH
public static final int DEFAULT_MAX_TOKEN_LENGTH- See Also:
-
-
Constructor Details
-
CapitalizationFilter
Creates a CapitalizationFilter with the default parameters. -
CapitalizationFilter
public CapitalizationFilter(TokenStream in, boolean onlyFirstWord, CharArraySet keep, boolean forceFirstLetter, Collection<char[]> okPrefix, int minWordLength, int maxWordCount, int maxTokenLength) Creates a CapitalizationFilter with the specified parameters.- Parameters:
in
- input tokenstreamonlyFirstWord
- should each word be capitalized or all of the words?keep
- a keep word list. Each word that should be kept separated by whitespace.forceFirstLetter
- Force the first letter to be capitalized even if it is in the keep list.okPrefix
- do not change word capitalization if a word begins with something in this list.minWordLength
- how long the word needs to be to get capitalization applied. If the minWordLength is 3, "and" > "And" but "or" stays "or".maxWordCount
- if the token contains more then maxWordCount words, the capitalization is assumed to be correct.maxTokenLength
- ???
-
-
Method Details
-
incrementToken
- Specified by:
incrementToken
in classTokenStream
- Throws:
IOException
-