Package org.apache.lucene.analysis.ar
Class ArabicAnalyzer
- java.lang.Object
-
- org.apache.lucene.analysis.Analyzer
-
- org.apache.lucene.analysis.StopwordAnalyzerBase
-
- org.apache.lucene.analysis.ar.ArabicAnalyzer
-
- All Implemented Interfaces:
Closeable,AutoCloseable
public final class ArabicAnalyzer extends StopwordAnalyzerBase
Analyzerfor Arabic.This analyzer implements light-stemming as specified by: Light Stemming for Arabic Information Retrieval http://www.mtholyoke.edu/~lballest/Pubs/arab_stem05.pdf
The analysis package contains three primary components:
ArabicNormalizationFilter: Arabic orthographic normalization.ArabicStemFilter: Arabic light stemming- Arabic stop words file: a set of default Arabic stop words.
- Since:
- 3.1
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.lucene.analysis.Analyzer
Analyzer.ReuseStrategy, Analyzer.TokenStreamComponents
-
-
Field Summary
Fields Modifier and Type Field Description static StringDEFAULT_STOPWORD_FILEFile containing default Arabic stopwords.-
Fields inherited from class org.apache.lucene.analysis.StopwordAnalyzerBase
stopwords
-
Fields inherited from class org.apache.lucene.analysis.Analyzer
GLOBAL_REUSE_STRATEGY, PER_FIELD_REUSE_STRATEGY
-
-
Constructor Summary
Constructors Constructor Description ArabicAnalyzer()Builds an analyzer with the default stop words:DEFAULT_STOPWORD_FILE.ArabicAnalyzer(CharArraySet stopwords)Builds an analyzer with the given stop wordsArabicAnalyzer(CharArraySet stopwords, CharArraySet stemExclusionSet)Builds an analyzer with the given stop word.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected Analyzer.TokenStreamComponentscreateComponents(String fieldName)CreatesAnalyzer.TokenStreamComponentsused to tokenize all the text in the providedReader.static CharArraySetgetDefaultStopSet()Returns an unmodifiable instance of the default stop-words set.protected TokenStreamnormalize(String fieldName, TokenStream in)-
Methods inherited from class org.apache.lucene.analysis.StopwordAnalyzerBase
getStopwordSet, loadStopwordSet, loadStopwordSet, loadStopwordSet
-
Methods inherited from class org.apache.lucene.analysis.Analyzer
attributeFactory, close, getOffsetGap, getPositionIncrementGap, getReuseStrategy, initReader, initReaderForNormalization, normalize, tokenStream, tokenStream
-
-
-
-
Field Detail
-
DEFAULT_STOPWORD_FILE
public static final String DEFAULT_STOPWORD_FILE
File containing default Arabic stopwords.Default stopword list is from http://members.unine.ch/jacques.savoy/clef/index.html The stopword list is BSD-Licensed.
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
ArabicAnalyzer
public ArabicAnalyzer()
Builds an analyzer with the default stop words:DEFAULT_STOPWORD_FILE.
-
ArabicAnalyzer
public ArabicAnalyzer(CharArraySet stopwords)
Builds an analyzer with the given stop words- Parameters:
stopwords- a stopword set
-
ArabicAnalyzer
public ArabicAnalyzer(CharArraySet stopwords, CharArraySet stemExclusionSet)
Builds an analyzer with the given stop word. If a none-empty stem exclusion set is provided this analyzer will add aSetKeywordMarkerFilterbeforeArabicStemFilter.- Parameters:
stopwords- a stopword setstemExclusionSet- a set of terms not to be stemmed
-
-
Method Detail
-
getDefaultStopSet
public static CharArraySet getDefaultStopSet()
Returns an unmodifiable instance of the default stop-words set.- Returns:
- an unmodifiable instance of the default stop-words set.
-
createComponents
protected Analyzer.TokenStreamComponents createComponents(String fieldName)
CreatesAnalyzer.TokenStreamComponentsused to tokenize all the text in the providedReader.- Specified by:
createComponentsin classAnalyzer- Returns:
Analyzer.TokenStreamComponentsbuilt from anStandardTokenizerfiltered withLowerCaseFilter,DecimalDigitFilter,StopFilter,ArabicNormalizationFilter,SetKeywordMarkerFilterif a stem exclusion set is provided andArabicStemFilter.
-
normalize
protected TokenStream normalize(String fieldName, TokenStream in)
-
-