खोज…


एक कस्टम विश्लेषक बनाना

अधिकांश विश्लेषण अनुकूलन createComponents वर्ग में होता है, जहाँ टोकनिनेटर और टोकनलेनलेटर परिभाषित होते हैं।

CharFilters initReader विधि में जोड़ा जा सकता है।

Analyzer analyzer = new Analyzer() {
    @Override
    protected Reader initReader(String fieldName, Reader reader) {
        return new HTMLStripCharFilter(reader);
    }
       
    @Override
    protected TokenStreamComponents createComponents(String fieldName) {
        Tokenizer tokenizer = new StandardTokenizer();
        TokenStream stream = new StandardFilter(tokenizer);
        //Order matters!  If LowerCaseFilter and StopFilter were swapped here, StopFilter's
        //matching would be case sensitive, so "the" would be eliminated, but not "The"
        stream = new LowerCaseFilter(stream);
        stream = new StopFilter(stream, StopAnalyzer.ENGLISH_STOP_WORDS_SET);
        return new TokenStreamComponents(tokenizer, stream);
    }
};

विश्लेषण किए गए टोकन के माध्यम से मैन्युअल रूप से Iterating

TokenStream stream = myAnalyzer.tokenStream("myField", textToAnalyze);
stream.addAttribute(CharTermAttribute.class);
stream.reset();
while(stream.incrementToken()) {
    CharTermAttribute token = stream.getAttribute(CharTermAttribute.class);
    System.out.println(token.toString());
}

stream.close();

कई विशेषताएँ उपलब्ध हैं। सबसे आम CharTermAttribute , जिसका उपयोग विश्लेषण शब्द को स्ट्रिंग के रूप में करने के लिए किया जाता है।



Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow