org.apache.lucene.analysis.ar

## Class ArabicAnalyzer

- java.lang.Object
- - org.apache.lucene.analysis.Analyzer
  - - org.apache.lucene.analysis.ar.ArabicAnalyzer

-     public final class ArabicAnalyzer
      extends Analyzer

  `Analyzer` for 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.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static java.lang.String` | `DEFAULT_STOPWORD_FILE` File containing default Arabic stopwords.
    `static java.lang.String` | `STOPWORDS_COMMENT` The comment character in the stopwords file.

    - ### Fields inherited from class org.apache.lucene.analysis.Analyzer

      `overridesTokenStreamMethod`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ArabicAnalyzer()` Deprecated. Use `ArabicAnalyzer(Version)` instead
    `ArabicAnalyzer(java.io.File stopwords)` Deprecated. Use `ArabicAnalyzer(Version, File)` instead
    `ArabicAnalyzer(java.util.Hashtable stopwords)` Deprecated. Use `ArabicAnalyzer(Version, Hashtable)` instead
    `ArabicAnalyzer(java.lang.String[] stopwords)` Deprecated. Use `ArabicAnalyzer(Version, String[])` instead
    `ArabicAnalyzer(Version matchVersion)` Builds an analyzer with the default stop words: `DEFAULT_STOPWORD_FILE`.
    `ArabicAnalyzer(Version matchVersion, java.io.File stopwords)` Builds an analyzer with the given stop words.
    `ArabicAnalyzer(Version matchVersion, java.util.Hashtable stopwords)` Builds an analyzer with the given stop words.
    `ArabicAnalyzer(Version matchVersion, java.lang.String[] stopwords)` Builds an analyzer with the given stop words.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `TokenStream` | `reusableTokenStream(java.lang.String fieldName, java.io.Reader reader)` Returns a (possibly reused) `TokenStream` which tokenizes all the text in the provided `Reader`.
    `TokenStream` | `tokenStream(java.lang.String fieldName, java.io.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 java.lang.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

    - #### STOPWORDS_COMMENT

          public static final java.lang.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

    - #### ArabicAnalyzer

          public ArabicAnalyzer()

      Deprecated. Use `ArabicAnalyzer(Version)` instead
      Builds an analyzer with the default stop words: `DEFAULT_STOPWORD_FILE`.

    - #### ArabicAnalyzer

          public ArabicAnalyzer(Version matchVersion)

      Builds an analyzer with the default stop words: `DEFAULT_STOPWORD_FILE`.

    - #### ArabicAnalyzer

          public ArabicAnalyzer(java.lang.String[] stopwords)

      Deprecated. Use `ArabicAnalyzer(Version, String[])` instead
      Builds an analyzer with the given stop words.

    - #### ArabicAnalyzer

          public ArabicAnalyzer(Version matchVersion,
                                java.lang.String[] stopwords)

      Builds an analyzer with the given stop words.

    - #### ArabicAnalyzer

          public ArabicAnalyzer(java.util.Hashtable stopwords)

      Deprecated. Use `ArabicAnalyzer(Version, Hashtable)` instead
      Builds an analyzer with the given stop words.

    - #### ArabicAnalyzer

          public ArabicAnalyzer(Version matchVersion,
                                java.util.Hashtable stopwords)

      Builds an analyzer with the given stop words.

    - #### ArabicAnalyzer

          public ArabicAnalyzer(java.io.File stopwords)
                         throws java.io.IOException

      Deprecated. Use `ArabicAnalyzer(Version, File)` instead
      Builds an analyzer with the given stop words. Lines can be commented out using `STOPWORDS_COMMENT`
      Throws:
        `java.io.IOException`

    - #### ArabicAnalyzer

          public ArabicAnalyzer(Version matchVersion,
                                java.io.File stopwords)
                         throws java.io.IOException

      Builds an analyzer with the given stop words. Lines can be commented out using `STOPWORDS_COMMENT`
      Throws:
        `java.io.IOException`

  - ### Method Detail

    - #### tokenStream

          public final TokenStream tokenStream(java.lang.String fieldName,
                                               java.io.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 an `ArabicLetterTokenizer` filtered with `LowerCaseFilter`, `StopFilter`, `ArabicNormalizationFilter` and `ArabicStemFilter`.

    - #### reusableTokenStream

          public TokenStream reusableTokenStream(java.lang.String fieldName,
                                                 java.io.Reader reader)
                                          throws java.io.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 an `ArabicLetterTokenizer` filtered with `LowerCaseFilter`, `StopFilter`, `ArabicNormalizationFilter` and `ArabicStemFilter`.
      Throws:
        `java.io.IOException`

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