org.apache.lucene.analysis.fa
Class PersianAnalyzer

java.lang.Object
  extended by org.apache.lucene.analysis.Analyzer
      extended by org.apache.lucene.analysis.fa.PersianAnalyzer
All Implemented Interfaces:
Closeable

public final class PersianAnalyzer
extends org.apache.lucene.analysis.Analyzer

Analyzer for Persian.

This Analyzer uses ArabicLetterTokenizer 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.


Field Summary
static String DEFAULT_STOPWORD_FILE
          File containing default Persian stopwords.
static String STOPWORDS_COMMENT
          The comment character in the stopwords file.
 
Fields inherited from class org.apache.lucene.analysis.Analyzer
overridesTokenStreamMethod
 
Constructor Summary
PersianAnalyzer(org.apache.lucene.util.Version matchVersion)
          Builds an analyzer with the default stop words: DEFAULT_STOPWORD_FILE.
PersianAnalyzer(org.apache.lucene.util.Version matchVersion, File stopwords)
          Deprecated. use PersianAnalyzer(Version, Set) instead
PersianAnalyzer(org.apache.lucene.util.Version matchVersion, Hashtable<?,?> stopwords)
          Deprecated. use PersianAnalyzer(Version, Set) instead
PersianAnalyzer(org.apache.lucene.util.Version matchVersion, Set<?> stopwords)
          Builds an analyzer with the given stop words
PersianAnalyzer(org.apache.lucene.util.Version matchVersion, String... stopwords)
          Deprecated. use PersianAnalyzer(Version, Set) instead
 
Method Summary
static Set<?> getDefaultStopSet()
          Returns an unmodifiable instance of the default stop-words set.
 org.apache.lucene.analysis.TokenStream reusableTokenStream(String fieldName, Reader reader)
          Returns a (possibly reused) TokenStream which tokenizes all the text in the provided Reader.
 org.apache.lucene.analysis.TokenStream tokenStream(String fieldName, Reader reader)
          Creates a TokenStream which tokenizes all the text in the provided Reader.
 
Methods inherited from class org.apache.lucene.analysis.Analyzer
close, getOffsetGap, getPositionIncrementGap, getPreviousTokenStream, setOverridesTokenStreamMethod, setPreviousTokenStream
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DEFAULT_STOPWORD_FILE

public static final String DEFAULT_STOPWORD_FILE
File containing default Persian 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

STOPWORDS_COMMENT

public static final String STOPWORDS_COMMENT
The comment character in the stopwords file. All lines prefixed with this will be ignored

See Also:
Constant Field Values
Constructor Detail

PersianAnalyzer

public PersianAnalyzer(org.apache.lucene.util.Version matchVersion)
Builds an analyzer with the default stop words: DEFAULT_STOPWORD_FILE.


PersianAnalyzer

public PersianAnalyzer(org.apache.lucene.util.Version matchVersion,
                       Set<?> stopwords)
Builds an analyzer with the given stop words

Parameters:
matchVersion - lucene compatibility version
stopwords - a stopword set

PersianAnalyzer

public PersianAnalyzer(org.apache.lucene.util.Version matchVersion,
                       String... stopwords)
Deprecated. use PersianAnalyzer(Version, Set) instead

Builds an analyzer with the given stop words.


PersianAnalyzer

public PersianAnalyzer(org.apache.lucene.util.Version matchVersion,
                       Hashtable<?,?> stopwords)
Deprecated. use PersianAnalyzer(Version, Set) instead

Builds an analyzer with the given stop words.


PersianAnalyzer

public PersianAnalyzer(org.apache.lucene.util.Version matchVersion,
                       File stopwords)
                throws IOException
Deprecated. use PersianAnalyzer(Version, Set) instead

Builds an analyzer with the given stop words. Lines can be commented out using STOPWORDS_COMMENT

Throws:
IOException
Method Detail

getDefaultStopSet

public static Set<?> getDefaultStopSet()
Returns an unmodifiable instance of the default stop-words set.

Returns:
an unmodifiable instance of the default stop-words set.

tokenStream

public org.apache.lucene.analysis.TokenStream tokenStream(String fieldName,
                                                          Reader reader)
Creates a TokenStream which tokenizes all the text in the provided Reader.

Specified by:
tokenStream in class org.apache.lucene.analysis.Analyzer
Returns:
A TokenStream built from a ArabicLetterTokenizer filtered with LowerCaseFilter, ArabicNormalizationFilter, PersianNormalizationFilter and Persian Stop words

reusableTokenStream

public org.apache.lucene.analysis.TokenStream reusableTokenStream(String fieldName,
                                                                  Reader reader)
                                                           throws IOException
Returns a (possibly reused) TokenStream which tokenizes all the text in the provided Reader.

Overrides:
reusableTokenStream in class org.apache.lucene.analysis.Analyzer
Returns:
A TokenStream built from a ArabicLetterTokenizer filtered with LowerCaseFilter, ArabicNormalizationFilter, PersianNormalizationFilter and Persian Stop words
Throws:
IOException


Copyright © 2000-2010 Apache Software Foundation. All Rights Reserved.