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

public final class PersianAnalyzer
extends 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()
          Deprecated. Use PersianAnalyzer(Version) instead
PersianAnalyzer(File stopwords)
          Deprecated. Use PersianAnalyzer(Version, File) instead
PersianAnalyzer(Hashtable stopwords)
          Deprecated. Use PersianAnalyzer(Version, Hashtable) instead
PersianAnalyzer(String[] stopwords)
          Deprecated. Use PersianAnalyzer(Version, String[]) instead
PersianAnalyzer(Version matchVersion)
          Builds an analyzer with the default stop words: DEFAULT_STOPWORD_FILE.
PersianAnalyzer(Version matchVersion, File stopwords)
          Builds an analyzer with the given stop words.
PersianAnalyzer(Version matchVersion, Hashtable stopwords)
          Builds an analyzer with the given stop words.
PersianAnalyzer(Version matchVersion, String[] stopwords)
          Builds an analyzer with the given stop words.
 
Method Summary
 TokenStream reusableTokenStream(String fieldName, Reader reader)
          Returns a (possibly reused) TokenStream which tokenizes all the text in the provided Reader.
 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()
Deprecated. Use PersianAnalyzer(Version) instead

Builds an analyzer with the default stop words: DEFAULT_STOPWORD_FILE.


PersianAnalyzer

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


PersianAnalyzer

public PersianAnalyzer(String[] stopwords)
Deprecated. Use PersianAnalyzer(Version, String[]) instead

Builds an analyzer with the given stop words.


PersianAnalyzer

public PersianAnalyzer(Version matchVersion,
                       String[] stopwords)
Builds an analyzer with the given stop words.


PersianAnalyzer

public PersianAnalyzer(Hashtable stopwords)
Deprecated. Use PersianAnalyzer(Version, Hashtable) instead

Builds an analyzer with the given stop words.


PersianAnalyzer

public PersianAnalyzer(Version matchVersion,
                       Hashtable stopwords)
Builds an analyzer with the given stop words.


PersianAnalyzer

public PersianAnalyzer(File stopwords)
                throws IOException
Deprecated. Use PersianAnalyzer(Version, File) instead

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

Throws:
IOException

PersianAnalyzer

public PersianAnalyzer(Version matchVersion,
                       File stopwords)
                throws IOException
Builds an analyzer with the given stop words. Lines can be commented out using STOPWORDS_COMMENT

Throws:
IOException
Method Detail

tokenStream

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

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

reusableTokenStream

public 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 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.