lucene3.0如何实现中英数字混合字符串分词,例"wo是一个19岁的小伙",分词为w,o,是,一,个,1,9,岁,的,小
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了lucene3.0如何实现中英数字混合字符串分词,例"wo是一个19岁的小伙",分词为w,o,是,一,个,1,9,岁,的,小相关的知识,希望对你有一定的参考价值。
参考技术A 你可用不同的分词器(Analyser)来时间中文和英文的分词,主流的中文分词器有IKAnalyzer,SmartChineseAnalyzer,等等有五六种,你可也百度一下中文分词器,用些分词器可以同时对英文和中文进行分词,很好用的。。。Elasticsearch 7.X 中英混合分词器 Smart Chinese 使用
一、Smart Chinese
Smart Chinese Analysis插件将Lucene的Smart Chinese分析模块集成到Elasticsearch中,用于分析中文或中英文混合文本。 支持的分析器在大型训练语料库上使用基于隐马尔可夫(Markov)模型的概率知识来查找简体中文文本的最佳分词。 它使用的策略是首先将输入文本分解为句子,然后对句子进行切分以获得单词。 该插件提供了一个称为smartcn分析器的分析器,以及一个称为smartcn_tokenizer的标记器。 请注意,两者均不能使用任何参数进行配置。
Smart Chinese对中文支持稍好,但扩展性差,扩展词库,禁用词库和同义词库等不好处理。
二、ES 安装 analysis-smartcn
进入es的安装目录的bin下,执行下面命令:
elasticsearch-plugin install analysis-smartcn
安装完成之后,重启es。
三、分词测试
向ES服务器发送GET请求:
http://127.0.0.1:9200/_analyze
请求内容:
"text": "中华人民共和国",
"analyzer":"smartcn"
喜欢的小伙伴可以关注我的个人微信公众号,获取更多学习资料!
以上是关于lucene3.0如何实现中英数字混合字符串分词,例"wo是一个19岁的小伙",分词为w,o,是,一,个,1,9,岁,的,小的主要内容,如果未能解决你的问题,请参考以下文章