java实现大段中文转拼音首字母、拼音全拼
话不多说,上代码:
package cn.jiangshuai.personManage;import java.util.Scanner;import net.sourceforge.pinyin4j.PinyinHelper;
import net.sourceforge.pinyin4j.format.HanyuPinyinCaseType;
import net.sourceforge.pinyin4j.format.HanyuPinyinOutputFormat;
import net.sourceforge.pinyin4j.format.HanyuPinyinToneType;
import net.sourceforge.pinyin4j.format.exception.BadHanyuPinyinOutputFormatCombination;/*** 中文汉字转拼音工具类* @author JSYH**/
public class Main {public static void main(String[] args) {
// System.out.println("中国 首字母大写:"+toFirstChar("中国").toUpperCase());
// System.out.println("中国 转成拼音:"+toPinyin("中国"));StringBuilder sBuilder = new StringBuilder();System.out.println("请输入中文......");Scanner inScanner = new Scanner(System.in);while(inScanner.hasNextLine()) {sBuilder.append(inScanner.nextLine());if(inScanner.nextLine().equals("over")) { //用于控制结束输入的逃逸字符break;}}System.out.println("处理之后的输入字符串......");//System.out.println(sBuilder.toString().replaceAll("[^(0-9)]", ""));System.out.println(sBuilder.toString().replaceAll("[^(\\u4e00-\\u9fa5)]", "")); //借助正则表达式过滤掉非汉字的内容System.out.println("转换结果......");System.out.println(toFirstChar(sBuilder.toString().replaceAll("[^(\\u4e00-\\u9fa5)]", "")));System.out.println(toPinyin(sBuilder.toString().replaceAll("[^(\\u4e00-\\u9fa5)]", "")));}/*** 输入中文字符串 输出各汉字的首字母组成的字符串* @param chinese* @return*/public static String toFirstChar(String chinese) {String pinyinString = "";char[] newchar = chinese.toCharArray();HanyuPinyinOutputFormat hypy = new HanyuPinyinOutputFormat();hypy.setCaseType(HanyuPinyinCaseType.LOWERCASE);//hypy.setToneType(HanyuPinyinToneType.WITHOUT_TONE);hypy.setToneType(HanyuPinyinToneType.WITHOUT_TONE);for(int i = 0;i < newchar.length;i++) {if(newchar[i]>128) {try {pinyinString += PinyinHelper.toHanyuPinyinStringArray(newchar[i], hypy)[0].charAt(0);} catch (BadHanyuPinyinOutputFormatCombination e) {e.printStackTrace();}}else {pinyinString += newchar[i];}}return pinyinString;}/*** 输入中文字符串 输出各汉字的拼音全拼* @param chinese* @return*/public static String toPinyin(String chinese) {String pinyinString = "";char[] newchar = chinese.toCharArray();HanyuPinyinOutputFormat hypy = new HanyuPinyinOutputFormat();hypy.setCaseType(HanyuPinyinCaseType.LOWERCASE);hypy.setToneType(HanyuPinyinToneType.WITHOUT_TONE);for(int i = 0;i < newchar.length;i++) {if(newchar[i]>128) {try {pinyinString += PinyinHelper.toHanyuPinyinStringArray(newchar[i], hypy)[0];} catch (BadHanyuPinyinOutputFormatCombination e) {e.printStackTrace();}}else {pinyinString += newchar[i];}}return pinyinString;}
}
java实现大段中文转拼音首字母、拼音全拼相关推荐
- C# 获取汉字的拼音首字母和全拼(含源码)
C# 获取汉字的拼音首字母 一种是把所有中文字符集合起来组成一个对照表:另一种是依照汉字在Unicode编码表中的排序来确定拼音的首字母.碰到多音字时就以常用的为准(第一种方法中可以自行更改,方法为手 ...
- (转)C# 获取汉字的拼音首字母和全拼(含源码)[A]
https://blog.csdn.net/younghaiqing/article/details/62417269 C# 获取汉字的拼音首字母 一种是把所有中文字符集合起来组成一个对照表:另一种是 ...
- 完整简洁的Oracle获得汉字字符串拼音首字母和全拼的函数
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! http ...
- 【C#】获取汉字拼音首字母和全拼
文章目录 利用CJK统一表意符号获取首字母 获取首字母和全拼 另附sql server解决方案 来源 java的同学可以了解下pinyin4j,js可以了解ChinesePY.js 获取拼音的意义多在 ...
- 使用pinyin4j获取汉字拼音首字母或全拼
转载地址:http://yjck.iteye.com/blog/816107#bc2356769 pinyin4j是一个开源项目,使用它可以很容易的获取汉字的拼音,这也是我们经常需要用到的功能:下面是 ...
- php获取中文拼音(含生僻字)支持首字母,全拼
此文为基础篇-优势在于速度更快,无依赖第三方库.如需更多功能可参考进阶篇 进阶篇 支持多音字,音标 php获取中文拼音(含生僻字,多音字,音标)支持首字母,全拼 /*** 中文转拼音 (utf8版,g ...
- Java汉字转拼音工具类(支持首字母和全拼)
工具类产生是因为个人业务需求需要根据中文汉字排序,而博主又对网上回答不满意,所以才根据相关资料写了该工具类,写入博客 以备不时之需.直接上代码: Java汉字转成汉语拼音工具类,需要用到pinyin4 ...
- php获取中文拼音(含生僻字,多音字,音标)支持首字母,全拼
前面文章有提到php获取中文拼音的解决方案,文章链接如下 该方法的优势在于速度够快,不依赖于任何第三方库.但不支持多音字以及音标的获取,现在将借助第三方库解决这个问题 上一篇地址 php获取中文拼音( ...
- oracle汉字转拼音(获得全拼/拼音首字母/拼音截取等)
oracle汉字转拼音(获得全拼/拼音首字母/拼音截取等) oracle 字符集 GBK 没有问题 , UTF -8 需要修改一下 1.获得全拼 SELECT GETHZPY.GETHZFULLPY( ...
- mysql根据汉字首字母及全拼查询(主要解决生僻汉字获取错误问题,基本所有汉字都可以正确拿到首字母和全拼)
##粘贴复制运行即可创建这两个函数 ## 获取name字段的首字母和全拼 SELECT to_getPY(name),to_pinyin(name) FROM pingying ##根据首字母 ...
最新文章
- qt打开数据库mysql数据库文件怎么打开_qt打开数据库mysql数据库文件
- Shell脚本中command not found报错处理
- 高斯用服务器能算chk文件么,教程(二十四)使用freqchk命令进行热力学校正
- 针对$_SERVER[’PHP_SELF’]的跨站脚本攻击(XSS)
- 关于凭证和冲销凭证的RFC
- 44、生鲜电商平台-Java后端生成Token架构与设计详解
- PHP 对象、数组间的转换
- 科大星云诗社动态20201216
- 最新 | Python 官方中文文档正式发布!
- 《Go语言圣经》学习笔记 第五章函数
- Spark算子:统计RDD分区中的元素及数量
- 苏宁易购上半年营收936.06亿元,零售云加盟店新开1381家
- JVM学习手册(X):查看堆内存使用情况以及排错
- 有序数组转换为二叉搜索树
- 美国航空航天局(NASA)高度集成WebFOCUS和SharePoint
- stringbuilder 拼接语句缺失右括号_C++编程基础: 6. 语句、表达式和运算符
- gradientDescent----吴恩达机器学习作业
- 航空公司客户价值分析(python)
- html怎么把正方形改成圆形,css中如何把正方形变成圆形
- Java、数据库等面试题大全