solr 中文分词器IKAnalyzer和拼音分词器pinyin
solr分词过程:
Solr Admin中,选择Analysis,在FieldType中,选择text_en
左边框输入 “冬天到了天气冷了小明不想上学去了”,点击右边的按钮,发现对每个字都进行分词。这不符合中国人的习惯。
solr6.3.0自带中文分词包,在 \solr-6.3.0\contrib\analysis-extras\lucene-libs\lucene-analyzers-smartcn-6.3.0.jar,但是不能自定义词库
好在我们有IKAnalyzer(已无人更新,目前版本是2012)和pinyin分词插件。
IKAnalyzer安装
IKAnalyzer下载地址:https://github.com/EugenePig/ik-analyzer-solr5
因为原始的IKAnalyzer已经不支持solr5以后的版本,这里是修改过后的
用git clone到本地或者直接下载zip到本地,然后执行mvn clean instal(Java8),或者mvn clean -Djavac.src.version=1.7 -Djavac.target.version=1.7 install(jdk1.7)
执行完,在项目 /target 目录下,看到jar文件
将改jar文件copy到 solr目录:\solr-6.3.0\server\solr-webapp\webapp\WEB-INF\lib
然后修改core的配置文件:\solr-6.3.0\server\solr\test\conf\managed-schema
添加如下配置:
<fieldType name="text_ik" class="solr.TextField"> <analyzer type="index"><tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory" useSmart="false" /></analyzer><analyzer type="query"><tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory" useSmart="true" /></analyzer> </fieldType>
或者
<fieldType name="text_ik" class="solr.TextField"> <analyzer type="index" useSmart="false" class="org.wltea.analyzer.lucene.IKAnalyzer"/> <analyzer type="query" useSmart="true" class="org.wltea.analyzer.lucene.IKAnalyzer"/> </fieldType>
保存重启solr,到选择test核心-Analysis,进入分词页面,输入“冬天到了天气冷了小明不想上学去了”,FieldType选择“text_cn”,点击Analyse Value按钮:
看到已经分词中文成功了。
pinyin安装
pinyin下载地址:http://files.cnblogs.com/files/wander1129/pinyin.zip
下载后将2个jar文件copy到\solr-6.3.0\server\solr-webapp\webapp\WEB-INF\lib目录下,
然后修改core的配置文件:\solr-6.3.0\server\solr\test\conf\managed-schema,添加:
<!-- 配置拼音分词 pinyin--><fieldType name="text_pinyin" class="solr.TextField" positionIncrementGap="0"><analyzer type="index"><tokenizer class="org.apache.lucene.analysis.ik.IKTokenizerFactory"/><filter class="com.shentong.search.analyzers.PinyinTransformTokenFilterFactory" minTermLenght="2" /><filter class="com.shentong.search.analyzers.PinyinNGramTokenFilterFactory" minGram="1" maxGram="20" /></analyzer><analyzer type="query"><tokenizer class="org.apache.lucene.analysis.ik.IKTokenizerFactory"/><filter class="com.shentong.search.analyzers.PinyinTransformTokenFilterFactory" minTermLenght="2" /><filter class="com.shentong.search.analyzers.PinyinNGramTokenFilterFactory" minGram="1" maxGram="20" /></analyzer></fieldType>
重启solr
到选择test核心-Analysis,进入分词页面,输入“冬天到了天气冷了小明不想上学去了”,FieldType选择“text_pinyin”,点击Analyse Value按钮:
看到汉字转成拼音了。
转载于:https://www.cnblogs.com/yangzhenlong/p/8254264.html
solr 中文分词器IKAnalyzer和拼音分词器pinyin相关推荐
- Solr之——配置中文分词IKAnalyzer和拼音分词pinyinAnalyzer
转载请注明出处:http://blog.csdn.net/l1028386804/article/details/70200378 在上一篇博文<CentOS安装与配置Solr6.5>中, ...
- 开源项目在线化 中文繁简体转换/敏感词/拼音/分词/汉字相似度/markdown 目录
前言 以前在 github 上自己开源了一些项目.碍于技术与精力,大部分项目都是 java 实现的. 这对于非 java 开发者而言很不友好,对于不会编程的用户更加不友好. 为了让更多的人可以使用到这 ...
- Elasticsearch 分布式搜索引擎 -- 自动补全(拼音分词器、自定义分词器、自动补全查询、实现搜索框自动补全)
文章目录 1. 自动补全 1.1 拼音分词器 1.2.1 自定义分词器 1.2.2 小结 1.2 自动补全 1.3 实现酒店搜索框自动补全 1.3.1 修改酒店映射结构 1.3.2 修改HotelDo ...
- 59、Docker ElasticSearch安装拼音分词器及自定义分词器
一.使用拼音分词器 1.拼音分词器 2.docker下安装拼音分词器插件 3.测试拼音分词器 # 测试拼音分词器 POST /_analyze { "text": [" ...
- ElasticSearch + IK分词 + 拼音分词
Docker 安装 ES 因为是测试需要,所以跟公司版本保持一致即可 sudo docker pull elasticsearch:7.4.2sudo mkdir -p /data/es_home/c ...
- SpringBoot 集成 ES 7.6.2 并对字段进行中文和拼音分词处理
前言 在最近做的流媒体项目中需要集成 ES 搜索引擎,目前 ES 最新版本为 7.x 版本,在以往的项目中我都采用的是 spring 集成的 spring-data-es, 使用自定义类集成 elas ...
- SpringBoot集成ES 7.6.2 并对字段进行中文和拼音分词处理
文章目录 前言 一.为什么不用spring封装的spring-data-es? 二.springboot集成es的两种方式 1.spring-data-es使用elasticsearch 2.doc对 ...
- java lucene 中文分词_Lucene的中文分词器IKAnalyzer
分词器对英文的支持是非常好的. 一般分词经过的流程: 1)切分关键词 2)去除停用词 3)把英文单词转为小写 但是老外写的分词器对中文分词一般都是单字分词,分词的效果不好. 国人林良益写的IK Ana ...
- solr cloud系列-拼音分词器
这一章来说下solr cloud怎么使用拼音分词,以及同一个字段怎么样同时支持中文分词和拼音分词. 首先是solr6.1.0搭建拼音分词,这里我使用的是lucene的smartCN加pinyin4j组 ...
最新文章
- 浅谈TCP的窗口字段
- c# 使用TCP连接(server)
- springboot项目更改代码后实时刷新问题
- 增长率不用计算机,事业单位行测:这类资料分析题根本不用计算
- uva 10479——The Hendrie Sequence
- Densely CNN
- 可以同时开发php Java_php可以和java一起开发吗
- C#实现二维码功能,winform 以及 asp.net均可以用
- HDU 4607 Park Visit(树的直径)
- 潜移默化学会WPF(样式)-- DataGrid(转载)
- Debian 9 Stretch国内常用镜像源
- windows 运行库与dll文件
- 算法之迪杰斯特拉算法
- 约翰·亨尼斯(John Hennessy)—斯坦福大学-美国斯坦福大学校长介绍
- 周爱民:详解架构的核心原则
- 互联网思维到底是什么?
- 饿了么table排序
- 编译原理实验2(1)——自上而下语法分析
- 字符 正则表达式详解
- org.springframework.data.redis.serializer.SerializationException: Cannot serialize; nested exception
热门文章
- [转]application.properties详解 --springBoot配置文件
- Nginx+SSL+Tomcat+CDN部署总结,已实践有效~
- DataGridView 用户输入时,单元格输入值的设定
- 二叉树的先序、中序、后序遍历
- Insertion Sort List,Merge Two Sorted Lists,Sort List
- c# 获取方法所在的命名空间 类名 方法名
- VS2005 解决应用程序配置不正确,程序无法启动问题
- 如何开启/关闭SMTP路由调试
- Android Listview 点击item变黄色
- android studio 新建函数注释模板