ansj分词器使用记录
//最简单实例 String ruiec = “分词测试123456100名”;
//剔除指定的分词
s.insertStopWords("100名");
//剔除标点符号(w)
s.insertStopNatures("w");
//删除指定字
s.insertStopRegexes("请.*?");
String result1=ToAnalysis.parse(ruiec).recognition(s).toStringWithOutNature().replaceAll(","," "); System.out.println(result1);
以上是使用ansj分词器的最简单实例。
import org.ansj.app.keyword.KeyWordComputer;
import org.ansj.app.keyword.Keyword;
import org.ansj.domain.Result;
import org.ansj.domain.Term;
import org.ansj.recognition.impl.StopRecognition;
import org.ansj.splitWord.analysis.ToAnalysis; import java.util.*; /**
* Created by Liu
*/
public class SplitWordsByAnsj { public Keyword spiltword(String word) {
KeyWordComputer<?> kwc = new KeyWordComputer(5);
StopRecognition s = new StopRecognition();
List<Keyword> result=kwc.computeArticleTfidf(word);
return result.get(0); }
public static void main(String[] args) {
String word = "政务云是指通过云计算技术,统筹机房、计算、应用支撑、信息资源等,发挥云计算的虚拟化、高可靠性、高通用性、高可扩展性,使其数据处理快速、按需、弹性服务,为政府行业提供基础设施、支撑软件、应用系统、信息资源、运行保障和信息安全等综合服务平台。"; SplitWordsByAnsj ansj= new SplitWordsByAnsj();
System.out.println(ansj.spiltword(word).toString());//词组
System.out.println(ansj.spiltword(word).getScore());//词组的权重 }
}
以上是将一个句子分为几个词组,并展示出词组在句子中所占的权重,根据权重大小输出
KeyWordComputer<?> kwc = new KeyWordComputer(5)可以设置
输出词组的个数
public class SplitWordsByAnsj { public Keyword spiltword(String title,String content) {
KeyWordComputer<?> kwc = new KeyWordComputer(5);
StopRecognition s = new StopRecognition();
//List<Keyword> result=kwc.computeArticleTfidf(word);
List<Keyword> result1=kwc.computeArticleTfidf(title, content);
return result1.get(0); }
public static void main(String[] args) {
String title ="政务云是云计算技术";
String content = "政务云(Government Cloud)是指通过云计算技术,统筹机房、计算、应用支撑、信息资源等,发挥云计算的虚拟化、高可靠性、高通用性、高可扩展性,使其数据处理快速、按需、弹性服务,为政府行业提供基础设施、支撑软件、应用系统、信息资源、运行保障和信息安全等综合服务平台。"; SplitWordsByAnsj ansj= new SplitWordsByAnsj();
System.out.println(ansj.spiltword(title,content).toString());//词组
System.out.println(ansj.spiltword(title,content).getScore());//词组的权重 }
}
以上是根据标题将内容分为与标题相关的词组,即关键词
数据包
ansj分词器使用记录的更多相关文章
- elasticsearch使用ansj分词器
目前elasticsearch的版本已经更新到7.0以上了,不过由于客户需要5.2.2版本的elasticsearch,所以还是需要安装的,并且安装上ansj分词器.在部署ES的时候,采用容器的方式进 ...
- Lucene.net(4.8.0)+PanGu分词器问题记录一:分词器Analyzer的构造和内部成员ReuseStategy
前言:目前自己在做使用Lucene.net和PanGu分词实现全文检索的工作,不过自己是把别人做好的项目进行迁移.因为项目整体要迁移到ASP.NET Core 2.0版本,而Lucene使用的版本是3 ...
- elasticsearch安装ansj分词器
1.概述 elasticsearch用于搜索引擎,需要设置一些分词器来优化索引.常用的有ik_max_word: 会将文本做最细粒度的拆分.ik_smart: 会做最粗粒度的拆分.ansj等. ...
- 安装ansj分词器
项目地址:https://github.com/4onni/elasticsearch-analysis-ansj https://github.com/laigood/elasticsearch-a ...
- ElasticSearch最全分词器比较及使用方法
介绍:ElasticSearch 是一个基于 Lucene 的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于 RESTful web 接口.Elasticsearch 是用 Java 开 ...
- 11大Java开源中文分词器的使用方法和分词效果对比,当前几个主要的Lucene中文分词器的比较
本文的目标有两个: 1.学会使用11大Java开源中文分词器 2.对比分析11大Java开源中文分词器的分词效果 本文给出了11大Java开源中文分词的使用方法以及分词结果对比代码,至于效果哪个好,那 ...
- 11大Java开源中文分词器的使用方法和分词效果对比
本文的目标有两个: 1.学会使用11大Java开源中文分词器 2.对比分析11大Java开源中文分词器的分词效果 本文给出了11大Java开源中文分词的使用方法以及分词结果对比代码,至于效果哪个好,那 ...
- ES-自然语言处理之中文分词器
前言 中文分词是中文文本处理的一个基础步骤,也是中文人机自然语言交互的基础模块.不同于英文的是,中文句子中没有词的界限,因此在进行中文自然语言处理时,通常需要先进行分词,分词效果将直接影响词性.句法树 ...
- 如何使用Pig集成分词器来统计新闻词频?
散仙在上篇文章中,介绍过如何使用Pig来进行词频统计,整个流程呢,也是非常简单,只有短短5行代码搞定,这是由于Pig的内置函数TOKENIZE这个UDF封装了单词分割的核心流程,当然,我们的需求是各种 ...
随机推荐
- delphi 导出excel
Var FExcel:OleVariant; //excel应用程序 FWorkBook :OleVariant; //工作表 Temsheet:OleVariant; //工作薄 FPicture: ...
- 微信小程序<一>
下面是我对自己微信小程序学习的画的一个思维导图: 以后就一步一步的完善思维导图吧...到最后,应该是相当的庞大了呀...嘿嘿嘿! 目录结构总结记录: 包括入口文件app.js app.json&l ...
- linux 设备树中 dwc3 节点的phys参数含义
找了好久今天找到了,记录一下: &dwc3_0 { ... phys = <&lane3 PHY_TYPE_USB3 1 2 26000000>; ... } Requir ...
- C++写Socket——TCP篇(0)建立连接及双方传输数据
满山的红叶--飘落之时-- 最近接触了点关于用C++写socket的东西,这里总结下. 这里主要是关于TCP的,TCP的特点什么的相关介绍在我另一篇博文里,所以这里直接动手吧. 我们先在windows ...
- python 正则sub的使用
self.content = re.sub(r'>|<',lambda x: '>' if x.group()[0] == '>' else '<' , s ...
- System.InsufficientMemoryException:无法分配536870912字节的托管内存缓冲区。可用内存量可能不足
一个病人住院太久,一次性打印护理表单超过3000条时报如标题所示的错误, 个人查阅分析应该可以从如下几方面入手: 一:查看程序客户端和服务端的配置文件相关属性是否限制了缓存最大值 (应该不是这个问题, ...
- linux操作系统安装运行Redis
Redis是c语言开发的. 安装redis需要c语言的编译环境.如果没有gcc需要在线安装.yum install gcc-c++ 安装步骤: 1.安装gcc yum install gcc ...
- Java设计给小学生的自动出题系统
系统要求: 1.自动出题,涉及加减乘除四则运算 2.运算为两位数之间 3.减法不能出现负数 4.乘法结果不超过100 5.除法必须整除 6.用户决定出题量 7.用户决定几道题一换行 8.题目不允许重复 ...
- 读取CSV文件存入map中(C++)
自己平时操作文件用的不多,今天小伙伴让帮忙写一下这个,顺便记一下.实现功能:从"翻译.csv"文件中读取出字符串,以","作为分隔符,将每一行对应存入map中. ...
- py之包和日志
第一章 包 只要文件夹下含有__init__.py文件就是一个包 回想一下,之前我们没有学习模块的时候将一个整体的功能写入到文件中,为了能够充分的将某个功能进行重用 我们使用了模块,但是慢慢的模块就会 ...