solr自定义分词器
目的:在对英文句子分词的时候,一般采用采用的分词器是WhiteSpaceTokenizerFactory,有一次因业务要求,需要根据某一个特殊字符(以逗号分词,以竖线分词)分词。如图1,我输入的词,如果用ik分词器,会分成如图1的效果,用自定义按逗号分割的分词器,会分成如图2的效果。
图(1)
图(2)
1.加入jar包
<dependency>
<groupId>org.apache.solr</groupId>
<artifactId>solr-core</artifactId>
<version>6.0.0</version>
</dependency>
2.参照WhitespaceTokenizerFactory
的源码,写一个自己的MyVerticalLineTokenizerFactory如图3
,内容基本不变:
图(3)
3.写一个MyVerticalLineTokenizer.java类如图4,实现用逗号分词
图4
这里最主要的方法就是isTokenChar
,它控制了分词的字符
4.需要把刚才的java文件打成jar包,Eclipse,直接选中两个类文件,右键 -> Export -> JAR File -> Select the export destination: ->选择输出路径,填一个jar名字:MyVerticalLineTokenizerFactory -> Finish,
得到的MyVerticalLineTokenizerFactory.jar文件大约3KB,将改文件放置到tomcat7/webapps/solr/WEB-INF/lib下,在shcema.xml
中定义自己的field如图5
图(5)
重启tomcat,按照comma_text类型进行分词,就会出现如图2的效果。
参照:http://blog.csdn.net/jiangchao858/article/details/68954044
solr自定义分词器相关推荐
- 15.1 自定义分词器
创建自定义分词器 测试分词器 DELETE /test_analyzer PUT /test_analyzer { "settings": { "analysis&quo ...
- ElasticSearch教程——自定义分词器(转学习使用)
一.分词器 Elasticsearch中,内置了很多分词器(analyzers),例如standard(标准分词器).english(英文分词)和chinese(中文分词),默认是standard. ...
- 【Es】ElasticSearch 自定义分词器
1.分词器 转载:https://blog.csdn.net/gwd1154978352/article/details/83343933 分词器首先看文章:[Elasticsearch]Elasti ...
- Solr Tokenizers分词器介绍
摘要: Solr的分词器(Tokenizers)用来将文本流分解成一系列的标记(tokens).分析器analyzer 受字段配置的影响,分词器(Tokenizers)于此无关.分析器主要是把字符流( ...
- Elasticsearch 分布式搜索引擎 -- 自动补全(拼音分词器、自定义分词器、自动补全查询、实现搜索框自动补全)
文章目录 1. 自动补全 1.1 拼音分词器 1.2.1 自定义分词器 1.2.2 小结 1.2 自动补全 1.3 实现酒店搜索框自动补全 1.3.1 修改酒店映射结构 1.3.2 修改HotelDo ...
- Elasticsearch配置拼音分词和自定义分词器
下载elasticsearch-analysis-pinyin拼音分词器 https://codeload.github.com/medcl/elasticsearch-analysis-pinyi ...
- elasticsearch分词练习、自定义分词器练习
elasticsearch分词练习.自定义分词器练习 分词练习 自定义分词器 分词练习 准备数据 post metric_zabbix/log {"@message":" ...
- ElasticSearch03_Mapping字段映射、常用类型、数据迁移、ik分词器、自定义分词器
文章目录 ①. Mapping字段映射概述 ②. 常用类型如下 - text.keyword ③. 映射中对时间类型详解 ④. ES的keyword的属性ignore_above ⑤. 映射的查看.创 ...
- 商城项目18_esMapping字段映射、常用类型、数据迁移、ik分词器、自定义分词器
文章目录 ①. Mapping字段映射概述 ②. 常用类型如下 - text.keyword ③. 映射中对时间类型详解 ④. ES的keyword的属性ignore_above ⑤. 映射的查看.创 ...
- 微服务框架 SpringCloud微服务架构 27 自动补全 27.2 自定义分词器
微服务框架 [SpringCloud+RabbitMQ+Docker+Redis+搜索+分布式,系统详解springcloud微服务技术栈课程|黑马程序员Java微服务] SpringCloud微服务 ...
最新文章
- 客户区和非客户区指的什么?窗口客户区和视图客户区的区别
- MySQL5.6 主从复制配置
- Deeplearnng.AI第四部分第一周、卷积神经网络
- UITableView性能优化与卡顿
- 【动态规划】大厅安排 (ssl 1212)
- wikioi 1017--乘积最大
- 怎么让员工服从管理_职场 | 在职场中,遇到不服从管理的员工,该怎么办呢?...
- 破坏计算机信息系统功能罪,破坏计算机信息系统罪
- 拒绝捞回中的效果评估与策略二次调用
- 【转帖】WEB架构师成长之路之一-走正确的路
- 混合使用UITabBarController和UINavigationController
- java拆装箱(转)
- MFC绘制bmp图片背景
- 双代号网络图快速计算时差法
- 【软件设计】BDD由内而外采用策略
- vue-cli 脚手架安装
- splash : mouse_click()方法
- 人工智能技术中的科学性与艺术性
- Android:启动流程
- 不定宽高,实现盒子左右垂直居中