public final class PersianAnalyzer extends StopwordAnalyzerBase
Analyzer for Persian.
This Analyzer uses PersianCharFilter which implies tokenizing around
zero-width non-joiner in addition to whitespace. Some persian-specific variant forms (such as farsi
yeh and keheh) are standardized. "Stemming" is accomplished via stopwords.
Analyzer.ReuseStrategy, Analyzer.TokenStreamComponents| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
DEFAULT_STOPWORD_FILE
File containing default Persian stopwords.
|
static java.lang.String |
STOPWORDS_COMMENT
The comment character in the stopwords file.
|
stopwordsGLOBAL_REUSE_STRATEGY, PER_FIELD_REUSE_STRATEGY| Constructor and Description |
|---|
PersianAnalyzer()
Builds an analyzer with the default stop words:
DEFAULT_STOPWORD_FILE. |
PersianAnalyzer(CharArraySet stopwords)
Builds an analyzer with the given stop words
|
| Modifier and Type | Method and Description |
|---|---|
protected Analyzer.TokenStreamComponents |
createComponents(java.lang.String fieldName)
Creates
Analyzer.TokenStreamComponents
used to tokenize all the text in the provided Reader. |
static CharArraySet |
getDefaultStopSet()
Returns an unmodifiable instance of the default stop-words set.
|
protected java.io.Reader |
initReader(java.lang.String fieldName,
java.io.Reader reader)
Wraps the Reader with
PersianCharFilter |
protected TokenStream |
normalize(java.lang.String fieldName,
TokenStream in)
Wrap the given
TokenStream in order to apply normalization filters. |
getStopwordSet, loadStopwordSet, loadStopwordSet, loadStopwordSetattributeFactory, close, getOffsetGap, getPositionIncrementGap, getReuseStrategy, getVersion, initReaderForNormalization, normalize, setVersion, tokenStream, tokenStreampublic static final java.lang.String DEFAULT_STOPWORD_FILE
public static final java.lang.String STOPWORDS_COMMENT
public PersianAnalyzer()
DEFAULT_STOPWORD_FILE.public PersianAnalyzer(CharArraySet stopwords)
stopwords - a stopword setpublic static CharArraySet getDefaultStopSet()
protected Analyzer.TokenStreamComponents createComponents(java.lang.String fieldName)
Analyzer.TokenStreamComponents
used to tokenize all the text in the provided Reader.createComponents in class AnalyzerfieldName - the name of the fields content passed to the
Analyzer.TokenStreamComponents sink as a readerAnalyzer.TokenStreamComponents
built from a StandardTokenizer filtered with
LowerCaseFilter, DecimalDigitFilter, ArabicNormalizationFilter,
PersianNormalizationFilter and Persian Stop wordsprotected TokenStream normalize(java.lang.String fieldName, TokenStream in)
AnalyzerTokenStream in order to apply normalization filters.
The default implementation returns the TokenStream as-is. This is
used by Analyzer.normalize(String, String).protected java.io.Reader initReader(java.lang.String fieldName,
java.io.Reader reader)
PersianCharFilterinitReader in class AnalyzerfieldName - IndexableField name being indexedreader - original ReaderCopyright © 2000–2025 The Apache Software Foundation. All rights reserved.