利用IK分词器,自定义分词规则

IK分词源码下载地址:https://code.google.com/p/ik-analyzer/downloads/list

lucene源码下载地址:http://www.eu.apache.org/dist/lucene/java/

下载IK分词源码后,运行出现错误提示:

Analyzer cannot be resolved to a type
	TokenStream cannot be resolved to a type
	OffsetAttribute cannot be resolved to a type
	OffsetAttribute cannot be resolved to a type
	CharTermAttribute cannot be resolved to a type
	CharTermAttribute cannot be resolved to a type
	TypeAttribute cannot be resolved to a type
	TypeAttribute cannot be resolved to a type

解决办法:

在项目project -->clean 下即可

自定义分词规则步骤:

时间: 2024-11-09 18:12:56

利用IK分词器,自定义分词规则的相关文章

Elasticsearch的分析过程,内置字符过滤器、分析器、分词器、分词过滤器(真是变态多啊!美滋滋)

分析过程 当数据被发送到elasticsearch后并加入倒排序索引之前,elasticsearch会对文档进行处理: 字符过滤:使用字符过滤器转变字符. 文本切分为分词:将文本(档)分为单个或多个分词. 分词过滤:使用分词过滤器转变每个分词. 分词索引:最终将分词存储在Lucene倒排索引中. 整体流程: 目的是达到人性化的分词 内置字符过滤器 HTML字符过滤器.映射字符过滤器.模式替换过滤器 HTML字符过滤器 POST _analyze { "tokenizer": "

配置ES IK分词器自定义字典

1.编辑IKAnalyzer.cfg.xml文件 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd"> <properties> <comment>IK Analyzer 扩展配置</comment> <!--用户可以在

如何在solr中添加ik分词器

分词技术是搜索技术里面的一块基石.很多人用过,如果你只是为了简单快速地搭一个搜索引擎,你确实不用了解太深.但一旦涉及效果问题,分词器上就可以做很多文章.例如, 在我们实际用作电商领域的搜索的工作中,类目预判的实现就极须依赖分词,至少需要做到可以对分词器动态加规则.再一个简单的例子,如果你的优化方法就是对不同的词分权重,提高一些重点词的权重的话,你就需要依赖并理解分词器. 下面将介绍如何在solr中为core:simple的title添加分词,承接上一篇博文(http://simplelife.b

IK分词器原理与源码分析

原文:http://3dobe.com/archives/44/ 引言 做搜索技术的不可能不接触分词器.个人认为为什么搜索引擎无法被数据库所替代的原因主要有两点,一个是在数据量比较大的时候,搜索引擎的查询速度快,第二点在于,搜索引擎能做到比数据库更理解用户.第一点好理解,每当数据库的单个表大了,就是一件头疼的事,还有在较大数据量级的情况下,你让数据库去做模糊查询,那也是一件比较吃力的事(当然前缀匹配会好得多),设计上就应当避免.关于第二点,搜索引擎如何理解用户,肯定不是简单的靠匹配,这里面可以加

Solr文本分析剖析【文本分析、分词器详解、自定义文本分析字段及分词器】

一.概述 Solr文本分析消除了索引词项与用户搜索词项之间的语言差异,让用户在搜索buying a new house时能找到类似的内容,例如:purchasing a new home这样的文档.如果搭配恰当,文本分析就能允许用户使用自然语言进行搜索,而无需考虑搜索词项的所有可能形式.毕竟谁也不想看到为了相似搜索而构造这样的查询表达式:buying house OR purchase home OR buying a home OR purchasing a house .... 用户可以使用

lucene自定义分词器

工作上,有需要对纯数字的字符串做分词,好像CJK二元分词器对这样的数字不会做分词,所以自己写了个分词器,分词器达到以下效果:对字符串1234567,分词后为:12 34 56 7 Analyzer: package org.apache.lucene.analysis.core; import java.io.Reader; import java.io.StringReader; import org.apache.lucene.analysis.Analyzer; import org.ap

ElasticSearch最全分词器比较及使用方法

介绍:ElasticSearch 是一个基于 Lucene 的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于 RESTful web 接口.Elasticsearch 是用 Java 开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎.设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便. Elasticsearch中,内置了很多分词器(analyzers).下面来进行比较下系统默认分词器和常用的中文分词器之间的区别. 系统默认分词器:1.

11大Java开源中文分词器的使用方法和分词效果对比

本文的目标有两个: 1.学会使用11大Java开源中文分词器 2.对比分析11大Java开源中文分词器的分词效果 本文给出了11大Java开源中文分词的使用方法以及分词结果对比代码,至于效果哪个好,那要用的人结合自己的应用场景自己来判断. 11大Java开源中文分词器,不同的分词器有不同的用法,定义的接口也不一样,我们先定义一个统一的接口: /** * 获取文本的所有分词结果, 对比不同分词器结果 * @author 杨尚川 */ public interface WordSegmenter {

9大Java开源中文分词器的使用方法和分词效果对比

本文的目标有两个: 1.学会使用9大Java开源中文分词器 2.对比分析9大Java开源中文分词器的分词效果 9大Java开源中文分词器,不同的分词器有不同的用法,定义的接口也不一样,我们先定义一个统一的接口: /**  * 获取文本的所有分词结果, 对比不同分词器结果  * @author 杨尚川  */ public interface WordSegmenter {     /**      * 获取文本的所有分词结果      * @param text 文本      * @retur

Lucene系列:(6)分词器

1.什么是分词器 采用一种算法,将中英文本中的字符拆分开来,形成词汇,以待用户输入关健字后搜索 2.为什么要分词器 因为用户输入的搜索的内容是一段文本中的一个关健字,和原始表中的内容有差别,但作为搜索引擎来讲,又得将相关的内容搜索出来,此时就得采用分词器来最大限度匹配原始表中的内容. 3.分词器工作流程 (1)按分词器拆分出词汇 (2)去除停用词和禁用词 (3)如果有英文,把英文字母转为小写,即搜索不分大小写 4.演示常用分词器测试 这里测试需要引入IKAnalyzer3.2.0Stable.j