官术网_书友最值得收藏!

  • Lucene 4 Cookbook
  • Edwood Ng Vineeth Mohan
  • 240字
  • 2021-07-16 14:07:50

Obtaining a TokenStream

TokenStream is an intermediate data format between components within the analysis process. TokenStream acts as both an input and output format in all filters. For tokenizer, it consumes text from a reader and outputs result as TokenStream. Let's explore TokenStream in detail in this section.

Getting ready

The Analyzer class is an abstract base class containing two methods of interest. The first one is createComponents (String fieldname, Reader reader). This is where the analyzer is put together by chaining the tokenizer and filters. The second method is tokenStream (String fieldname, Reader reader). This is the method we will review in this section. We will use the tokenStream method to return a processed TokenStream so we can examine its content after the analysis process.

How to do it...

We need two arguments to call the tokenStream method. The first is a field name and the second is a reader:

Reader reader = new StringReader("Text to be passed");
Analyzer analyzer = new SimpleAnalyzer();
TokenStream tokenStream = analyzer.tokenStream("myField", reader);

How it works…

An analyzer processes incoming text via a Reader input. Internally, the Reader is passed on to Tokenizer, which turns the text into a TokenStream after it's been processed. From here on, TokenStream is passed around between filters in every step. TokenStream is essentially an enumeration of tokens that you can iterate through. TokenStream extends from AttributeSource and it provides an interface to return token attributes and value.

主站蜘蛛池模板: 铜山县| 车险| 瑞昌市| 田林县| 滨海县| 阿合奇县| 恩施市| 桐乡市| 大邑县| 尉犁县| 东乡族自治县| 佳木斯市| 秀山| 南宁市| 宽甸| 北票市| 建德市| 成武县| 凭祥市| 安吉县| 遂昌县| 芜湖县| 通辽市| 天台县| 邮箱| 纳雍县| 蒙山县| 洞口县| 湖口县| 海淀区| 南雄市| 南安市| 手游| 资源县| 周宁县| 临汾市| 萨嘎县| 铁岭县| 鄯善县| 邵东县| 西乌珠穆沁旗|