拼音和谐音字解决方案

2023-01-02 01:04:17   第一文档网     [ 字体: ] [ 阅读: ] [ 文档下载 ]
说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。下载word有问题请添加QQ:admin处理,感谢您的支持与谅解。点击这里给我发消息

#第一文档网# 导语】以下是®第一文档网的小编为您整理的《拼音和谐音字解决方案》,欢迎阅读!
谐音字,拼音,解决方案

如对您有帮助,请购买打赏,谢谢您!

Lucene搜索——拼音、模糊音解决方案

Lucene全文搜索引擎,在我们的使用中已经能很好的解决中文的搜索功能。我们可以方便的利用现在网上比较流行的两种开源lucene中文分词插件“庖丁解牛”IKAnalyzer来实现我们想要的结果。但是在中文拼音和谐音字方面无论是这两个插件还是现在lucene官方的支持都没提供很好的分词器插件和解决方案

经过大家的一起讨论,最后在拼音和谐音方面准备下面方式来实现该功能。下面我描述一下解决思路和算法,及一些问题。

一.总体思路

a) 建立索引文件:建立索引文件时保存两部分内容,汉字和汉字的拼音,其中

拼音中间要加上空格。例如:成都市天府广场——>cheng du shi tian fu guang chang。索引文件中内容就是

“成都市天府广场 cheng du shi tian fu guang chang

对于汉字翻译成带空格的拼音用数据库语法不好实现,我们可以使用java音插件。

b) 处理用户输入内容:用户输入的内容分为两种情况 i. 中文汉字:例如:“成都天府”这种情况可以通过“IKAnalyzer“和“庖

丁解牛”完全解决 ii. 同音字:例如“程度天府”不是完全错误时分词器可以通过正确的微量

匹配,同音字的我们就可以把汉字翻译成拼音再进行搜索。cheng du 两个“单词”我们在分词时已经加入到索引中所以是可以搜到的。

iii. 谐音和拼音。(这里是本文档的重点)

1. 拼音

例如输入:chengdutianfuguangchang

也有两种种情况输入很正确和输入拼音中有错误,无论哪种情况我们都必须把这个巨大的字符串给拆分了。 拆分算法:

首先我们要建立一个汉字拼字对照表。 例如:

A Ai An Ang Ao Ba Bai ban bang bao be bei ben Beng bi bia

将所有的拼音组合都放到一个集合里面,所有的组合并不是非常大。 下面我们进行拆分: 以成都天府广场为例:

******************************************************************** c h e n g d u t i a n f u g u a n g c h a n g c

h che

ng che

chen



gd chen cheng

du


如对您有帮助,请购买打赏,谢谢您!

ti







a

an

nf cheng du ti a fu gu a

ng cheng du ti an fu gu a









gua

ng cheng du ti an fu gua guan

gc堵死 cheng du ti an fu guan





tian

fu gu a

ng堵死 cheng du tian fu gu a gua

ng堵死 cheng du tian fu gua guan gc堵死

guang c h cha

ng堵死cheng du tian fu guang cha chan

g堵死 cheng du tian fu guang chan chang cheng du tian fu guang chang ************************************************************************

通过上面分析我们分析到最后找到了一个结果cheng du tian fu guang chang 其他结果都在半路终止了(例子太特殊了只有一种情况),这样我们就把把拼音字符串给拆分了,我们先考虑拼写完全正确的情况,再有拼音书写错误的我们再进一步的进行考虑(可以采用跳过无匹配的字符重新组合)。最后得到拼音分词结果我们再进行搜索。

这样在效率上肯定是不好的。lucene官方包中中文分词就是将每个字都分开,这在搜索界已经完全否定了这种对中文的分词,于是产生了插件“庖丁解牛”和“IKAnalyzer”等分词方式,

例如“IKAnalyzer”分词:

是一个开源的——>|||开源|

这样根据词组减少了分词的数量,分词少了要搜索的少了,自然在搜索时效率就提高了。我们的拼音也是基本的拆分实现后我们再考虑将拼音组成词,来提高效率。

2.谐音拼音和谐音汉字


本文来源:https://www.dywdw.cn/9b6030bcec630b1c59eef8c75fbfc77da369974d.html

相关推荐
推荐阅读