C#将带声调的拼音转不带声调的拼音

元音对照表,直接复制用即可

/// <summary>
/// 获取元音对照表
/// </summary>
/// <returns></returns>
public static Dictionary<char, char> GetYuanYin()
{Dictionary<char, char> dic = new Dictionary<char, char>();dic.Add('ā', 'a');dic.Add('á', 'a');dic.Add('ǎ', 'a');dic.Add('à', 'a');dic.Add('ē', 'e');dic.Add('é', 'e');dic.Add('ě', 'e');dic.Add('è', 'e');dic.Add('ī', 'i');dic.Add('í', 'i');dic.Add('ǐ', 'i');dic.Add('ì', 'i');dic.Add('ō', 'o');dic.Add('ó', 'o');dic.Add('ǒ', 'o');dic.Add('ò', 'o');dic.Add('ū', 'u');dic.Add('ú', 'u');dic.Add('ǔ', 'u');dic.Add('ù', 'u');dic.Add('ǖ', 'v');dic.Add('ǘ', 'v');dic.Add('ǚ', 'v');dic.Add('ǜ', 'v');return dic;
}

替换方法封装:

/// <summary>
/// 获取姓对应的拼音--没有声调
/// </summary>
/// <returns></returns>
public static string GetCode2(string code)
{if (string.IsNullOrEmpty(code))return string.Empty;char[] list = code.ToCharArray();Dictionary<char, char> dic = GetYuanYin();for (int i = 0; i < list.Length; i++){var item = list[i];var first = dic.Where(q => q.Key == item).FirstOrDefault();if (first.Value != 0){list[i] = first.Value;}}return String.Join("", list);
}

使用案例:

    Console.WriteLine(SurnamesHelper.GetCode("谢"));Console.WriteLine(SurnamesHelper.GetCode("张"));Console.WriteLine(SurnamesHelper.GetCode("解"));Console.WriteLine(SurnamesHelper.GetCode2("谢"));Console.WriteLine(SurnamesHelper.GetCode2("张"));Console.WriteLine(SurnamesHelper.GetCode2("解"));

更多:

Js将带声调的拼音转不带声调的拼音

C#汉字转拼音_Microsoft.PinYinConverter汉字转拼音

C# 中文简体中文繁体转换_ChineseConverter

C#将带声调的拼音转不带声调的拼音相关推荐

  1. Js将带声调的拼音转不带声调的拼音

    Js将带声调的拼音转不带声调的拼音 元音对照表 //将带有声调的元音,替换成没有声调的元音var yuanyinSource = {'ā': 'a','á': 'a','ǎ': 'a','à': 'a ...

  2. java 生成拼音_java工具-常用汉语转拼音库Pinyin4j 、tinypinyin、JPinyin

    Pinyin4j是一个流行的Java库,支持中文字符和拼音之间的转换,拼音输出格式可以定制,在项目中经常会遇到需求用户输入汉字后转换为拼音的场景,这时候Pinyin4j就可以派上用场 有自己私服的可以 ...

  3. python怎么用拼音-Python利用拼音库PyPinyin获取汉字的拼音

    我们可以利用python的PyPinyin库来获取汉字的拼音,我们先来写一个简单的案例import pypinyin print(pypinyin.pinyin( "小宁博客")) ...

  4. 汉子拼音不认识缤纷_儿童学拼音app哪个最好

    幼小衔接的培训对于语文这个学科最基础就是练字.识字.拼音这三项,其中拼音应该是基础中的基础.我们小时候一般学拼音,就是跟着老师读,看看书本教,有时候比较难的拼读也容易出错.现在在线教育发展迅猛,也有很 ...

  5. python的拼音_GitHub - mozillazg/python-pinyin: 汉字转拼音(pypinyin)

    汉字拼音转换工具(Python 版) 将汉字转为拼音.可以用于汉字注音.排序.检索(Russian translation) . License: MIT license Python version ...

  6. C#汉字转拼音(npinyin)将中文转换成拼音全文或首字母

    汉字转拼音貌似一直是C#开发的一个难题,无论什么方案都有一定的bug,之前使用了两种方案. 1.Chinese2Spell.cs 一些不能识别的汉字全部转为Z 2.Microsoft Visual S ...

  7. php 网址尾部带斜杠和不带区别,URL路径中带正斜杠/与不带的区别

    简单理解:不带斜杠的URL结尾通常被服务器识别成独立文件,当它去查找这个文件缺失的时候,就会重定向到带斜杠的URL,这个时候带斜杠的URL,可以理解成为是目录. 解读URL结尾斜杠的产生: 举例: - ...

  8. 1.深度好文:带缓冲I/O 和不带缓冲I/O的区别与联系

    首先要明白不带缓冲的概念:所谓不带缓冲,并不是指内核不提供缓冲,而是只单纯的系统调用,不是函数库的调用.系统内核对磁盘的读写都会提供一个块缓冲(在有些地方也被称为内核高速缓存),当用write函数对其 ...

  9. 【转载】IIS网站配置不带www域名直接跳转带www的域名

    很多时候为了统一网站入口,需要将不带www的主域名解析到带www的域名记录下,当客户访问不带www的域名网址的时候自动跳转到带www的域名,在IIS Web服务器中可以通过URL重写模块来实现此功能, ...

最新文章

  1. python excel操作单元格_python 操作excel表格的方法
  2. T extends Serializable这是什么意思呢?看明白这个,你的问题就自然而然的明白了!...
  3. sql 修改时间戳语句_从 0 到 1 搭建技术中台之 SQL 审核平台
  4. 浅析Java.lang.ProcessBuilder类
  5. Spring 事务基于注解和xml方式
  6. 数据库基础知识——存储过程和函数
  7. 网抑云熬夜打卡源码+微信登录+免签支付+今日打卡统计
  8. I/O的一些简单操作
  9. CentOS7配置ssh证书登录无效
  10. C++中 (n1)和(1n) 分别表示什么意思?
  11. POJ 1149 PIGS(最大流)dinic模板注释
  12. Tensorflow CIFAR10 (二分类)
  13. 一句话理解cmp_to_key函数
  14. 搜狗android平板专用,搜狗推首款支持Android 3.0平板专用输入法
  15. 两只小企鹅(Python实现)
  16. Homebrew完美卸载软件及其依赖包
  17. 文言文的理解 —— 字词篇
  18. 易能变频器说明书故障代码_易能变频器 EN600-4T0055G/0075P故障代码E-03-东莞英成机电设备...
  19. 详解冬奥冠军背后的AI黑科技
  20. 现在开始 -- Steve Pavlina

热门文章

  1. Python 英汉-汉英 词典脚本,可以安装到Linux命令中
  2. 【大学生活】搞学习还是搞技术
  3. JOffice协同办公开发平台
  4. TKDE 2018 | A Comprehensive Survey of Graph Embedding: Problems, Techniques, and Applications
  5. usb server
  6. 数据分析学习总结笔记03:数据降维经典方法
  7. RTD1296PB在NAS市场中的优势及应用实例
  8. 控制工程基础学习笔记-第2章 控制系统的动态数学模型
  9. Android 锁屏时间
  10. 斯伦贝谢公布2019年第二季度业绩