如何使用lucene中的扩展词典
谢谢您的回答,我现在就想知道如何实现最简单的word、txt或者excel中的ctrl+F的功能??...
谢谢您的回答,我现在就想知道如何实现最简单的word、txt或者excel中的ctrl+F的功能??
展开
展开全部
你可以使用一个开源的中文分词包MMAnalyzer,网上可以下到。在程序中引入此包。这个分词包的大概作用是:
1、支持英文、数字、中文(简体)混合分词
2、常用的数量和人名的匹配
3、超过22万词的词库整理
4、实现正向最大匹配算法
5、词典的动态扩展
6、分词效率: 第一次分词需要1-2秒(读取词典),之后速度基本与Lucene自带分词器持平。
具体方法:
Analyzer analyzer = new MMAnalyzer();
然后用这个analyzer的analyzer.tokenStream()来对某一个字符串进行分词(比如“中华人民共和国”,最终可以得出分词结果,有固定的类来表示结果,具体怎么写看其文档。
从这个例子来看,结果是“中华” “人民” “共和国”,利用某些类来迭代得出每一个词并存入Map中做key,每迭代出一个分词结果就在map中查找一下,若已有此词为key,则在value里加1。这样就实现了你的需求。
1、支持英文、数字、中文(简体)混合分词
2、常用的数量和人名的匹配
3、超过22万词的词库整理
4、实现正向最大匹配算法
5、词典的动态扩展
6、分词效率: 第一次分词需要1-2秒(读取词典),之后速度基本与Lucene自带分词器持平。
具体方法:
Analyzer analyzer = new MMAnalyzer();
然后用这个analyzer的analyzer.tokenStream()来对某一个字符串进行分词(比如“中华人民共和国”,最终可以得出分词结果,有固定的类来表示结果,具体怎么写看其文档。
从这个例子来看,结果是“中华” “人民” “共和国”,利用某些类来迭代得出每一个词并存入Map中做key,每迭代出一个分词结果就在map中查找一下,若已有此词为key,则在value里加1。这样就实现了你的需求。
微测检测5.10
2023-07-11 广告
2023-07-11 广告
IEC62133与en62133的区别如下:1. 认证机构不同:IEC62133是国际的标准,它以国际通用的标准进行生产;而en62133采用的是欧盟的标准,它使用欧盟的生产需求进行生产。2. 宗旨不同:IEC62133的宗旨是促进电气、电...
点击进入详情页
本回答由微测检测5.10提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询