使用Pinyin4j进行拼音分词的方法
使用maven引入相关的jar
com.belerweb pinyin4j 2.5.1
创建Pinyin4jUtil
packagecom.os.core.util.solr; importnet.sourceforge.pinyin4j.PinyinHelper; importnet.sourceforge.pinyin4j.format.HanyuPinyinCaseType; importnet.sourceforge.pinyin4j.format.HanyuPinyinOutputFormat; importnet.sourceforge.pinyin4j.format.HanyuPinyinToneType; importnet.sourceforge.pinyin4j.format.exception.BadHanyuPinyinOutputFormatCombination; importjava.util.ArrayList; importjava.util.Hashtable; importjava.util.List; importjava.util.Map; /** *汉语拼音工具类 *CreatedbyPengSongHeon2017/2/90009. */ publicclassPinyin4jUtil{ publicstaticvoidmain(String[]args){ Stringstr="测试"; Stringpinyin=Pinyin4jUtil.converterToSpell(str); System.out.println(str+"pinyin:"+pinyin); pinyin=Pinyin4jUtil.converterToFirstSpell(str); System.out.println(str+"shortpinyin:"+pinyin); } /** *汉字转换位汉语拼音首字母,英文字符不变,特殊字符丢失支持多音字,生成方式如(长沙市长:cssc,zssz,zssc,cssz) * *@paramchines汉字 *@return拼音 */ publicstaticStringconverterToFirstSpell(Stringchines){ StringBufferpinyinName=newStringBuffer(); char[]nameChar=chines.toCharArray(); HanyuPinyinOutputFormatdefaultFormat=newHanyuPinyinOutputFormat(); defaultFormat.setCaseType(HanyuPinyinCaseType.LOWERCASE); defaultFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE); for(inti=0;i128){ try{ //取得当前汉字的所有全拼 String[]strs=PinyinHelper.toHanyuPinyinStringArray( nameChar[i],defaultFormat); if(strs!=null){ for(intj=0;j 128){ try{ //取得当前汉字的所有全拼 String[]strs=PinyinHelper.toHanyuPinyinStringArray( nameChar[i],defaultFormat); if(strs!=null){ for(intj=0;j >discountTheChinese(StringtheStr){ //去除重复拼音后的拼音列表 List
以上这篇使用Pinyin4j进行拼音分词的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。