Class SmartChineseAnalyzer

  • All Implemented Interfaces:
    java.io.Closeable, java.lang.AutoCloseable

    public final class SmartChineseAnalyzer
    extends Analyzer
    SmartChineseAnalyzer is an analyzer for Chinese or mixed Chinese-English text. The analyzer uses probabilistic knowledge to find the optimal word segmentation for Simplified Chinese text. The text is first broken into sentences, then each sentence is segmented into words.

    Segmentation is based upon the Hidden Markov Model. A large training corpus was used to calculate Chinese word frequency probability.

    This analyzer requires a dictionary to provide statistical data. SmartChineseAnalyzer has an included dictionary out-of-box.

    The included dictionary data is from ICTCLAS1.0. Thanks to ICTCLAS for their hard work, and for contributing the data under the Apache 2 License!

    Since:
    3.1
    • Field Detail

      • DEFAULT_STOPWORD_FILE

        private static final java.lang.String DEFAULT_STOPWORD_FILE
        See Also:
        Constant Field Values
      • STOPWORD_FILE_COMMENT

        private static final java.lang.String STOPWORD_FILE_COMMENT
        See Also:
        Constant Field Values
    • Constructor Detail

      • SmartChineseAnalyzer

        public SmartChineseAnalyzer()
        Create a new SmartChineseAnalyzer, using the default stopword list.
      • SmartChineseAnalyzer

        public SmartChineseAnalyzer​(boolean useDefaultStopWords)
        Create a new SmartChineseAnalyzer, optionally using the default stopword list.

        The included default stopword list is simply a list of punctuation. If you do not use this list, punctuation will not be removed from the text!

        Parameters:
        useDefaultStopWords - true to use the default stopword list.
      • SmartChineseAnalyzer

        public SmartChineseAnalyzer​(CharArraySet stopWords)
        Create a new SmartChineseAnalyzer, using the provided Set of stopwords.

        Note: the set should include punctuation, unless you want to index punctuation!

        Parameters:
        stopWords - Set of stopwords to use.