汉字转拼音

汉字转拼英——简单实现

依赖

<dependency><groupId>com.belerweb</groupId><artifactId>pinyin4j</artifactId><version>2.5.0</version>
</dependency>
汉字转拼音方式1:
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.HanyuPinyinVCharType;
import net.sourceforge.pinyin4j.format.exception.BadHanyuPinyinOutputFormatCombination;public class PinYinUtil {public static void main(String[] args) {System.out.println(getPinyin("中国红123")); //--zhongguohong123}/*** @param china (字符串 汉字)* @return 汉字转拼音 其它字符不变*/public static String getPinyin(String china){HanyuPinyinOutputFormat formart = new HanyuPinyinOutputFormat();formart.setCaseType(HanyuPinyinCaseType.LOWERCASE);formart.setToneType(HanyuPinyinToneType.WITHOUT_TONE);formart.setVCharType(HanyuPinyinVCharType.WITH_V);char[] arrays = china.trim().toCharArray();String result = "";try {for (int i=0;i<arrays.length;i++) {char ti = arrays[i];if(Character.toString(ti).matches("[\\u4e00-\\u9fa5]")){ //匹配是否是中文String[] temp = PinyinHelper.toHanyuPinyinStringArray(ti,formart);result += temp[0];}else{result += ti;}}} catch (BadHanyuPinyinOutputFormatCombination e) {e.printStackTrace();}return result;}
}
汉字转拼音方式2
/**
* 获取汉字拼音的方法。如: 张三 --> zhangsan
* 说明:暂时解决不了多音字的问题,只能使用取多音字的第一个音的方案
*
* @param hanzi 汉子字符串
* @return 汉字拼音; 如果都转换失败,那么返回null
* 43
*/
public static String getHanziPinYin(String hanzi) {String result = null;if (null != hanzi && !"".equals(hanzi)) {char[] charArray = hanzi.toCharArray();StringBuffer sb = new StringBuffer();for (char ch : charArray) {if (Character.toString(ch).matches("[\\u4E00-\\u9FA5]+")) {// 逐个汉字进行转换, 每个汉字返回值为一个String数组(因为有多音字)String[] stringArray = PinyinHelper.toHanyuPinyinStringArray(ch);if (null != stringArray) {// 把第几声这个数字给去掉sb.append(stringArray[0].replaceAll("\\d", ""));}} else {sb.append(ch);}}if (sb.length() > 0) {result = sb.toString();}}return result;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/736344.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CloudStack 中 op_host_capacity 表中的 capacity_type 取值详解

在 Apache CloudStack 中&#xff0c;op_host_capacity 数据表是用于记录云平台中主机资源容量的关键表之一。该表中的 capacity_type 字段是一个重要的属性&#xff0c;它标识了不同类型的基础架构资源。下面我们将详细解析 op_host_capacity 表中 capacity_type 的各种取值及…

2k_Day2:今天是springMVC和mybatisPlus的大白话

1.我感觉&#xff0c;springboot把配置搭好了&#xff0c;就能写业务增删改查&#xff0c;然后盯好dao、service、impl、controller就好了&#xff0c;其他的事&#xff0c;用到时才会再去配置&#xff0c;不是吗&#xff1f; 2.使用mybatisplus时&#xff0c;它有很多方法&am…

解决Gradle下载过慢问题的有效方式:使用国内镜像站点

前言 在开发过程中&#xff0c;我们经常会遇到Gradle下载速度缓慢或超时的问题。作为一个强大而流行的构建工具&#xff0c;Gradle是许多项目中必不可少的一部分。然而&#xff0c;由于官方下载地址可能受网络限制影响&#xff0c;导致下载速度较慢。针对这个问题&#xff0c;…

【题解】—— LeetCode一周小结10

【题解】—— 每日一道题目栏 上接&#xff1a;【题解】—— LeetCode一周小结9 4.用栈实现队列 题目链接&#xff1a;232. 用栈实现队列 请你仅使用两个栈实现先入先出队列。队列应当支持一般队列支持的所有操作&#xff08;push、pop、peek、empty&#xff09;&#xff1a…

基于ACM32 MCU的电动滑板车方案了,助力低碳出行

随着智能科技的快速发展&#xff0c;电动滑板车的驱动系统也得到了长足的发展。国内外的电动滑板车用电机驱动系统分为传统刷式电机和无刷电机两种类型。其中&#xff0c;传统的刷式电机已经逐渐被无刷电机所取代&#xff0c;无刷电机的性能和寿命都更出色&#xff0c;已成为电…

springboot集成 mongodb以及mongodb简单工具类

前言 springboot集成 mongodb 有开箱即用的starter 因此集成还是很方便的 集成 添加依赖 <!--mongodb--> <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-mongodb</artifactId> </d…

【APP逆向】酒仙网预约茅台程序,包含逆向过程详解

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 所属的专栏:爬虫实战,零基础、进阶教学 景天的主页:景天科技苑 文章目录 酒仙网预约抢购茅台1.抓包分析,账户名和密码登录2.短信登录3.登录+茅台预约 密码登录酒仙网预约抢购茅台 目标:账号登…

退磁曲线方形度Q与膝点Hk

大家都知道衡量钕铁铁磁体性能的指标包括剩磁Br、矫顽力HcB、内禀矫顽力HcJ和最大磁能积(BH)max&#xff0c;除此之外&#xff0c;内禀曲线方向度和Hk也是磁应用工程师非常关注的两个指标&#xff0c;今天就来了解一下这两个指标的含义及影响因素。 首先我们先来回顾一下什么是…

数据库备份脚本嘎嘎香,被秀到了!

1.Oracle RMAN备份 1.1 创建目录 [oracleOEL7 ~]$ mkdir -p /u01/dbbak/script [oracleOEL7 ~]$ cd /u01/dbbak [oracleOEL7 ~]$ chown -R oracle:oinstall script[oracleOEL7 ~]$ mkdir -p /u01/dbbak/db [oracleOEL7 ~]$ mkdir -p /u01/dbbak/arch [oracleOEL7 ~]$ cd /u01…

In-Memory Key-Value Store Live Migration with NetMigrate——泛读笔记

FAST 2024 Paper 论文阅读笔记整理 问题 分布式键值存储需要在节点之间频繁迁移键值碎片&#xff0c;以对动态工作负载变化做出反应&#xff0c;从而实现负载平衡、数据局部性和服务弹性。 现有方法局限性 现有的实时迁移技术必须假设一个或多个位置作为主查询服务点&#…

某图网查看大图接口结果加密逆向之数据解密扣取

逆向网址 aHR0cHM6Ly95ZXNtenQuY29tLw 逆向链接 aHR0cHM6Ly95ZXNtenQuY29tL2JlYXV0eS8 逆向接口 aHR0cHM6Ly95ZXNtenQuY29tL2FwcC9wb3N0L3A/aWQ9MTA3NjQy 那么我们可以看到接口请求结果为加密数据&#xff0c; 需要手动解开才可以拿到数据 展示图片大图 逆向过程 请求方式&…

管易云对接打通金蝶K3-WISE调整单查询接口与新增其他出库接口

管易云对接打通金蝶K3-WISE调整单查询接口与新增其他出库接口 来源系统:管易云 管易云是上海管易云计算软件有限公司旗下的专注提供电商企业管理软件服务的品牌&#xff0c;总部位于中国上海张江高科技产业园区。管易云旗下拥有管易云C-ERP、EC-OMS、EC-WMS、B2C/B2B/BBC/微商城…

专题二 - 滑动窗口 - leetcode 3. 无重复字符的最长子串 | 中等难度

leetcode 3. 无重复字符的最长子串 leetcode 3. 无重复字符的最长子串 | 中等难度1. 题目详情1. 原题链接2. 基础框架 2. 解题思路1. 题目分析2. 算法原理3. 时间复杂度 3. 代码实现4. 知识与收获 leetcode 3. 无重复字符的最长子串 | 中等难度 1. 题目详情 给定一个字符串 s…

【Java】深入解析Java中的多态性:理解方法的重写和重载

在Java编程中&#xff0c;多态性是一种重要的概念&#xff0c;它允许我们以一种通用的方式处理不同类型的对象&#xff0c;从而增强了代码的灵活性、可扩展性和可维护性。多态性的实现主要通过方法的重写和重载&#xff0c;在本文中我们将深入探讨这两种机制的原理、使用方法以…

运营商关注焦点访谈:如何将裸光纤资源价值最大化?

引言 当遇见裸光纤租赁业务&#xff0c;运营商如何合理规划、分配纤芯资源&#xff1f;相信这是每个运营商伙伴都遇见过的问题。我们经过多用户调研访谈&#xff0c;发现规划与分配并不难&#xff0c;真正的难点在于将这些哑资源、暗资源“合理规划与分配”&#xff0c;合理才…

公众号如何获取视频号下载工具?

视频内容已经成为信息传播的重要载体&#xff0c;微信视频号作为国内主流的短视频平台之一&#xff0c;深受用户喜爱。有时我们想要保存喜欢的视频以供日后观看&#xff0c;这时就需要借助一些公众号提供的视频号下载工具。 本文将详细解析如何利用这些工具&#xff0c;让你轻…

【C++从练气到飞升】02---初识类与对象

&#x1f388;个人主页&#xff1a;库库的里昂 ✨收录专栏&#xff1a;C从练气到飞升 &#x1f389;鸟欲高飞先振翅&#xff0c;人求上进先读书。 目录 ⛳️推荐 一、面向过程和面向对象初步认识 二、类的引用 1. C语言版 2. C版 三、类的定义 类的两种定义方式&#xff…

P8680 [蓝桥杯 2019 省 B] 特别数的和:做题笔记

目录 思路 代码 题目链接&#xff1a; P8680 [蓝桥杯 2019 省 B] 特别数的和 思路 最开始我思路主要是从数字转字符串上想的。因为我们需要判断每一位是否是特殊数&#xff0c;字符串很容易做到这一点&#xff0c;只是在数字相加这一步不好实现。 需要用到字符串与数字的…

【Python从入门到进阶】50、当当网Scrapy项目实战(三)

接上篇《49、当当网Scrapy项目实战&#xff08;二&#xff09;》 上一篇我们讲解了的Spider与item之间的关系&#xff0c;以及如何使用item&#xff0c;以及使用pipelines管道进行数据下载的操作&#xff0c;本篇我们来讲解Scrapy的多页面下载如何实现。 一、多页面下载原理分…

【竞技宝】LOL:TES连下两局轻松击败OMG

【竞技宝】LOL&#xff1a;TES连下两局轻松击败OMG 北京时间2024年3月9日&#xff0c;英雄联盟LPL2024春季常规赛继续进行&#xff0c;昨日共进行三场比赛&#xff0c;第三场比赛由TES对阵OMG。本场比赛&#xff0c;TES的打野选手tian个人表现出色&#xff0c;两局比赛都多次成…