#import java.util.HashSet;
#import java.util.Set;
import net.sourceforge.pinyin4j.PinyinHelper;
import net.sourceforge.pinyin4j. format。 。 # StringBuffer pybf = 新的 StringBuffer();
char[] arr = chinese.toCharArray();
HanyuPinyinOutputFormat defaultFormat = new HanyuPinyinOutputFormat();
defaultFormat.setCaseType(HanyuPinyinCaseType.LOWERCASE);
defaultFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
String[] _t = PinyinHelper. [i], 預設格式);
if (_t != null) { ## pybf.append(_t[0].charAt(0));
}
# e.printStackTrace();
}
pybf.append(arr[i]);
}
}
}
}
/**
* 取得漢字符串拼音,英文字元不變
*
* @param chinese 漢字串
* @return 漢語拼音
*/
public static String cn2Spell(String chinese) {
StringBuffer pybf = new StringBuffer();
char[] arr = chinese.toCharArray();
HanyuPinyinOutputFormat defaultFormat = new HanyuPinyinOutputFormat();
defaultFormat.setCaseType(HanyuPinyinCaseType.LOWERCASE);
defaultFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
for (int i = 0; i if (arr [i] > 128) 嘗試 {
pybf. i], defaultFormat)[0]);
} catch (BadHanyuPinyinOutputFormatCombination e) {
e.printStackTrace();
}
pybf.append(arr[i]);
}
}
與「
}
public static String cnToSpell(String chines) {
String pinyinName = "";
char[] nameChar = chines.strbuf = new StringBuffer();
char[]toCharnameChar = chines.toCharraynamel. ();
HanyuPinyinOutputFormat defaultFormat = new HanyuPinyinOutputFormat();
defaultFormat.setCaseType(HanyuPinyinCaseType.LOWERCASE);
defaultFormat.setToneType(HanyuPinyinToneType。 ; nameChar.length; i++) {
char name = quanbianban(nameChar[i]);
nameChar[i] = name;
if (128 嘗試{
strbuf.append(PinyinHelper.toHanyuPinyinStringArray(nameChar[i], defaultFormat)[0].charAt(0));
} catch (BadHanyuPinyinOutputFormatCombination e) {
e.printStackTrace();# # }
} else {
strbuf.append(nameChar[i]);
}
}
pinyinName = strbuf.toString();
}
public static char quanbianban(char quan) {
switch (quan) {
case '0':
return '0';
case '1':
返回'1';
case '2':
返回'2';
# case '3':
return '3';
case '4':
# return '4';
# case '5':
return '5';
case '6':
返回'6';
case '7':
# 返回'7';
case '8':
返回'8' ;
case '9':
return '9';
預設值:
return quan;
} public static void main(String[] args) throws Exception {
}
/**
* 字串集合轉換字串(逗號分隔)
* @author wyh
* @param stringSet
* @return
*/
public static String makeStringByStringSet(Set
StringBuilder str = new StringBuilder(); =0;
for(String s : stringSet){
if(i == stringSet.size() - 1){
str.append(s);
}else{
str.append(s);
}else{
# str.append(s + ",");
}
i++;
}
return str.toString().toLowerCase();
} return str.toString().toLowerCase();
} return str.toString().toLowerCase();
*
* 取得拼音集合
* @author wyh
* @param src
* @return Set
*/
public static Set
if(src!=null && !src.trim().equalsIgnoreCase("")){ ## ] srcChar ;
srcChar=src.toCharArray();方式等
hanYuPinOutputFormat.setCaseType(HanyuPinyinCaseType.LOWERCASE);
hanYuPinOutputFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE); ;
String[][] temp = new String[src.length()][];
for(int i=0;i
//是中文
//是中文或a-z或A-Z轉換拼音(我的需求,是保留中文或a-z或A-Z)
if(String.valueOf(c).matches("[\\u4E00-\\u9FA5]+")){
# try{
temp[i] = PinyinHelper.toHanyuPinyinStringArray(srcChar[i], hanYuPinOutputFormat);
}catch(BadHanyuPinyinOutputFormatCombination e) {
}catch(BadHanyuPinyinOutputFormatCombination e) {
#> else if(((int)c>=65 && (int)c=97 && (int)c temp[i] = new String[]{String.valueOf(srcChar[i])};
}else{
temp[i] = new String[]{""};
}
# }
StringString [] pingyinArray = Exchange(temp);
Set
# for(int i=0;i }
return pinyinSet;
}
return null; static String[] Exchange(String[][] strJaggedArray){
String[][] temp = DoExchange(strJaggedArray);
return temp[0];
}
##*# *
* 遞迴
* @author wyh
* @param strJaggedArray
* @return
*/
private static String[][] DoExchange(String[][] strJaggedArray){
int len = strJaggedArray.length;
if(len >= 2){ #int len1 = strJaggedArray[0].length;
int len2 = strJaggedArray[1].length;
int newlen = len1*len2;
String[] temp = new String[newlen]; #String[] temp = new String[newlen]; #String[] temp = new String[newlen]; #String[] temp = new String[newlen]; # #int Index = 0;
for(int i=0;i
Index ++;
}
}
String[][] newArray = new String[len-1][]; #String[][] newArray = new String[len-1][];
for(int i=2;i
}else{
return strJaggedArray;
}
}
HanyuPinyinOutputFormat format = new HanyuPinyinOutputFormat();
# // UPPERCASE:大寫寫寫(ZHONG) ## zhong)
format.setCaseType(HanyuPinyinCaseType.LOWERCASE);
// WITHOUT_TONE:無音標 (zhong)
# // WITH_TONE_NUMBER:1-4數字表示英標/#hong# / WITH_TONE_MARK:直接用音標符號(必須WITH_U_UNICODE否則異常) (zhòng)
format.setToneType(HanyuPinyinToneType.WITH_TONE_MARK);
WITH_Fv#n WITH_U_AND_COLON:用"u:"表示ü (nu:)
# // WITH_U_UNICODE:直接用ü (nü)
format.setVCharType(HanyuPinyinVCharType.WITH_U_UNICODE); format.setVCharType(HanyuPinyinVCharType.WITH_U_UNICODE); StringArray( '重', format);
System.out.println(PinyinHelper.toHanyuPinyinStringArray('重', format)[1]);
System.out.println(PingYingChange.cnToSpell("鎮江abc")) ;
System.out.println(PingYingChange.quanbianban('o'));
String x = "嘅囧誰說壞學生來勼髮視頻襠児";
System.out.println( cn2FirstSpell(x));
System.out.println(cn2Spell(x));
String str = "單田芳";
)xSystem. ;
System.out.println("");
}
}
##
以上是pinyin4j的使用實例教程的詳細內容。更多資訊請關注PHP中文網其他相關文章!

命名管道是一种在操作系统中相对比较低级的进程通信方式,它是一种以文件为中介的进程通信方式。在Go语言中,通过os包提供了对命名管道的支持。在本文中,我们将介绍如何在Go中使用命名管道来实现进程间通信。一、命名管道的概念命名管道是一种特殊的文件,可以被多个进程同时访问。在Linux系统中,命名管道是一种特殊的文件类型,它们存在于文件系统的某个位置上,并且可以在

在Go语言中,使用第三方库是非常方便的。许多优秀的第三方库和框架可以帮助我们快速地开发应用程序,同时也减少了我们自己编写代码的工作量。但是如何正确地使用第三方库,确保其稳定性和可靠性,是我们必须了解的一个问题。本文将从以下几个方面介绍如何使用第三方库,并结合具体例子进行讲解。一、第三方库的获取Go语言中获取第三方库有以下两种方式:1.使用goget命令首先

随着传统的多线程模型在高并发场景下的性能瓶颈,协程成为了PHP编程领域的热门话题。协程是一种轻量级的线程,能够在单线程中实现多任务的并发执行。在PHP的语言生态中,协程得到了广泛的应用,比如Swoole、Workerman等框架就提供了对协程的支持。那么,如何在PHP中使用协程呢?本文将介绍一些基本的使用方法以及常见的注意事项,帮助读者了解协程的运作原理,以

变量函数是指可以使用变量来调用函数的一种特殊语法。在PHP中,变量函数是非常有用的,因为它可以让我们更加灵活地使用函数。在本文中,我们将介绍如何在PHP中使用变量函数。定义变量函数在PHP中,变量函数的定义方式非常简单,只需要将要调用的函数名赋值给一个变量即可。例如,下面的代码定义了一个变量函数:$func='var_dump';这里将var_dump函

近年来,WebSocket技术已经成为了Web开发中不可或缺的一部分。WebSocket是一种在单个TCP连接上进行全双工通信的协议,它使得客户端和服务器之间的通信更加流畅和高效。如今,很多现代的Web应用程序都使用了WebSocket技术,例如实时聊天、在线游戏以及实时数据可视化等。Go语言作为一个现代的编程语言,自然也提供了很好的支持WebSock

<p>Windows 系统上的 OneDrive 应用程序允许您将文件存储在高达 5 GB 的云上。OneDrive 应用程序中还有另一个功能,它允许用户选择一个选项,是将文件保留在系统空间上还是在线提供,而不占用您的系统存储空间。此功能称为按需文件。在这篇文章中,我们进一步探索了此功能,并解释了有关如何在 Windows 11 电脑上的 OneDrive 中按需使用文件的各种选项。</p><h2>如何使用 On

随着音频处理在各种应用场景中的普及,越来越多的程序员开始使用Go编写音频处理程序。Go语言作为一种现代化的编程语言,具有优秀的并发性和高效率的特点,使用它进行音频处理十分方便。本文将介绍如何在Go中使用音频处理技术,包括读取、写入、处理和分析音频数据等方面的内容。一、读取音频数据在Go中读取音频数据有多种方式。其中比较常用的是使用第三方库进行读取,比如go-

数据聚合函数是一种用于处理数据库表中多行数据的函数。在PHP中使用数据聚合函数可以使得我们方便地进行数据分析和处理,例如求和、平均数、最大值、最小值等。下面将介绍如何在PHP中使用数据聚合函数。一、介绍常用的数据聚合函数COUNT():计算某一列的行数。SUM():计算某一列的总和。AVG():计算某一列的平均值。MAX():取出某一列的最大值。MIN():


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

SublimeText3 Linux新版
SublimeText3 Linux最新版

SublimeText3漢化版
中文版,非常好用

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)