`
sg552
  • 浏览: 617447 次
  • 性别: Icon_minigender_1
  • 来自: 北京
博客专栏
47437293-94b9-3b04-9152-8971c7580049
白手起家学习使用Flex
浏览量:18643
社区版块
存档分类
最新评论

全文检索的几个重要概念: Analyzer, tokenizer, token filter, char filter

阅读更多
Analyzer:

The index analysis module acts as a configurable registry of Analyzers that can be used in order to both break indexed (analyzed) fields when a document is indexed and process query strings. It maps to the Lucene Analyzer.

index analysis module 就是一个可以配置的registry(登记处),在这里有很多的Analyzer. 每个Analyzer都可以在建立索引时,把document 划分成若干个index, 或者用于查询索引。  它(没看明白是 analysis 还是 analyzer) 对应于Lucene当中的 Analyzer.

Analyzers are (generally) composed of a single Tokenizer and zero or more TokenFilters.

Anaylyzer通常由 一个Tokenizer , 以及若干个 TokenFilter 组成。

A set of CharFilters can be associated with an analyzer to process the characters prior to other analysis steps.
一个Analyzer 可以对应与多个 CharFilter. CharFilter可以在其他Analysis步骤之前执行。

Char filters allow one to filter out the stream of text before it gets tokenized (used within an Analyzer).

An analyzer of type whitespace that is built using a Whitespace Tokenizer.
A tokenizer of type whitespace that divides text at whitespace.
空格Analyzer就是使用了空格tokenizer来建立的。
空格tokenizer: 就是用空格来划分文本的。

Snowball Analyzer
An analyzer of type snowball that uses the standard tokenizer, with standard filter, lowercase filter, stop filter, and snowball filter.

The Snowball Analyzer is a stemming analyzer from Lucene that is originally based on the snowball project from snowball.tartarus.org.

Snowball 分析器: 使用了标准分词器。(standard tokenizer) , 标准过滤器, 小写字母过滤器, stop filter, snowball filter.
Snowball分析器起源于 lucene 的snowball项目,后者是 snowball.tartarus.org

keyword analyzer:
An analyzer of type keyword that “tokenizes” an entire stream as a single token. This is useful for data like zip codes, ids and so on.
把某个 整串的字符视为一个单独的token. 这个analyzer对于 邮编,id 等的分析非常有效。

Stop Analyzer:
An analyzer of type stop that is built using a Lower Case Tokenizer, with Stop Token Filter.
Stop 分析其:使用了 Lower Case tokenizer 和 stop token filter。(后者是去掉字符串中的 stop word,然后再进行分析)

Language Analyzers:
A set of analyzers aimed at analyzing specific language text. The following types are supported: arabic, ... chinese, ... thai.
一组针对某些特定语言的 analyzer.

Custom Analyzer
An analyzer of type custom that allows to combine a Tokenizer with zero or more Token Filters, and zero or more Char Filters. The custom analyzer accepts a logical/registered name of the tokenizer to use, and a list of logical/registered names of token filters.

定制的分析器:  由 一个tokenizer, 任意个token filter, 任意个 char filter组成。
例子见: http://www.elasticsearch.org/guide/reference/index-modules/analysis/custom-analyzer.html
分享到:
评论

相关推荐

    java全文检索

    Java全文检索是基于Java语言实现的一种高效、精准的文本搜索技术,它在企业级应用中扮演着重要角色,尤其对于处理大量数据的搜索需求。在本文中,我们将深入探讨Java全文检索的核心概念、常用库、实现原理以及如何在...

    Lucene.Net 实现全文检索

    在本案例中,我们将在 .Net MVC4 框架上使用 Lucene.Net 来构建一个全文检索系统。 首先,我们需要理解全文检索的基本概念。全文检索是指在文档集合中,根据用户输入的查询词,查找包含这些词的文档。与传统的...

    lucene全文检索简单索引和搜索实例

    《Lucene全文检索:简单索引与搜索实例详解》 Lucene是Apache软件基金会的开源项目,是一款强大的全文检索库,被广泛应用于Java开发中,为开发者提供了构建高性能搜索引擎的能力。在本文中,我们将深入探讨如何基于...

    Lucene全文检索引擎

    Lucene是Apache软件基金会的一个开源项目,它是一个高性能、全文本搜索引擎库,可以被集成到各种应用中实现全文检索功能。Lucene提供了完整的搜索功能实现,包括索引创建、文档存储、查询解析和结果排序等。它的设计...

    lucene全文检索案例源码

    在“全文检索案例”源码中,我们可以看到以下几个关键步骤: 1. 创建索引:首先,我们需要创建一个IndexWriter实例,配置Analyzer,然后逐个读取文档,使用Document对象封装文档内容,添加Term,最后通过...

    IKAnalyzer6.5.0.jar

    总的来说,IKAnalyzer6.5.0.jar 是一个强大且灵活的中文分词工具,适用于各种需要处理中文文本的Java应用,如搜索引擎构建、信息检索、文本分析等场景。通过配置和扩展,它可以适应各种复杂的分词需求,提高自然语言...

    lucene 全文检索系统 java源码 (信息检索技术)

    Lucene 是一个高度可定制的全文检索库,由 Apache 软件基金会维护,它为开发人员提供了一个强大的工具来构建搜索功能。这个压缩包包含了 Lucene 的 Java 源码以及一个可执行程序,支持多种文件格式,如 PDF、DOC、...

    lucene 全文检索

    在Lucene中,全文检索的核心概念包括以下几点: 1. **索引构建**:Lucene首先需要对数据进行索引,将非结构化的文本转换为结构化的索引。这个过程包括分词(Tokenization)、去除停用词(Stop Word Removal)、词干...

    全文检索系统(Lucene)

    Lucene是Apache软件基金会的一个开放源代码项目,它是Java语言编写的一个全文检索库。Lucene提供了强大的文本分析、索引构建和搜索功能,为开发者提供了构建自己的全文检索应用的基础框架。由于其高效性和灵活性,...

    Lucene.Net全文检索Demo

    总之,“Lucene.Net全文检索Demo”是一个实用的学习和实践工具,通过它,开发者可以深入了解并掌握Lucene.Net的使用,从而在自己的应用程序中实现高效的全文检索功能。通过阅读提供的文档和运行Demo,你将能够更好地...

    全文检索jar包含ik分词jar

    Lucene,作为描述中提及的工具,正是Java的一个全文搜索引擎库,由Apache软件基金会开发。它提供了高级的索引和搜索功能,使得开发者能够快速地在海量文本数据中构建高效的搜索系统。 **Lucene详解** Lucene的核心...

    基于Lucene和IK Analyzer的全文检索框架搭建

    介绍了全文检索的基本概念,详细说明了全文检索框架Lucene的用法,并提供了样例代码。

    全文检索所需要的jar包

    全文检索系统通常由以下几个关键部分组成: 1. **索引构建**:这是全文检索的第一步,它涉及到对原始文本数据进行分析,提取关键词,并创建一个索引结构,如倒排索引。索引使得后续的查询操作能够快速定位到包含...

    纯Java全文检索

    在 Java 中实现全文检索,通常涉及以下几个关键步骤: 1. **建立索引**:首先,需要将待检索的文档转换为 Lucene 可以处理的格式,并生成索引。这包括对文档内容进行分词(Tokenization)、去除停用词(Stop Word ...

    IKAnalyzer-5.0.jar及solr-analyzer-extra-5.3.jar

    这是Apache Solr的一个扩展库,包含了各种分析器(Analyzer)、过滤器(Filter)和令牌化器(Tokenizer)。在Solr中,Analyzer是处理文本输入的关键组件,它负责将原始文本转换为可供索引和查询的Token序列。这个...

    lucene全文检索全面教程

    - **全文检索例子.doc**:这个文档可能包含一个或多个示例,演示如何在实际项目中创建索引、执行查询和处理搜索结果。 - **基于Java的全文索引引擎--Lucene.ppt**:这份PPT可能详细解释了如何在Java应用中集成Lucene...

    IK-Analyzer5.0

    IK Analyzer 是一个开源的、基于Java实现的中文分词组件,专为全文检索或信息提取等任务设计。在中文处理领域,分词是基础且关键的一环,它将连续的汉字序列切分成具有语义的词语,使得后续的自然语言处理任务如文本...

    Lucene---全文检索(文档pdf/txt/office/html)

    Lucene 是一个开源的全文检索库,由 Apache 软件基金会开发,被广泛应用于各种项目中,用于实现高效、可扩展的全文搜索功能。它提供了强大的文本分析和索引能力,支持多种格式的文档,如 PDF、TXT、Office 文件...

    IKAnalyzer中文分词支持lucene6.5.0版本

    由于林良益先生在2012之后未对IKAnalyzer进行更新,后续lucene分词接口发生变化,导致不可使用,所以此jar包支持lucene6.0以上版本

    使用zend Framework的lucene进行全文检索

    总的来说,使用Zend Framework的Lucene进行全文检索需要对Lucene的基本概念有所了解,包括索引构建、查询解析和结果返回等。同时,为了处理中文内容,必须设计合适的分词策略。通过自定义分析器和预过滤停用词,我们...

Global site tag (gtag.js) - Google Analytics