018.PinYin/PinYinHelper.cs

(开头部分) 59KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

#region -- 版 本 注 释 --
/****************************************************
* 文 件 名:
* Copyright(c) 王树羽
* CLR 版本: 4.5
* 创 建 人:王树羽
* 电子邮箱:674613047@qq.com
* 官方网站:https://www.cnblogs.com/shuyu
* 创建日期:2018-06-25 
* 文件描述:
******************************************************
* 修 改 人:
* 修改日期:
* 备注描述:
*******************************************************/
#endregion

using Microsoft.International.Converters.PinYinConverter;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;

namespace CommonLib
{
    /// <summary>
    /// 拼音 帮助类
    /// </summary>
    public class PinYinHelper
    {
        #region 获取汉字对应的拼音

        /// <summary>
        /// 获取汉字对应的拼音
        /// </summary>
        /// <param name="str"></param>
        /// <returns></returns>
        public static Model.PinYin GetPinYin(string str)
        {
            var chs = str.ToCharArray();
            List<List<string>> Dic = new List<List<string>>();//记录每个汉字的全拼

            foreach (var ch in chs)
            {
                var list = GetPinYin(ch);
                list = list.Where(p => !string.IsNullOrWhiteSpace(p)).Distinct().ToList();//去重
                if (list.Any())
                {
                    Dic.Add(list);
                }
            }

            var obj = new Model.PinYin();
            foreach (var items in Dic)
            {
                if (obj.PingYin.Count <= 0)
                {
                    obj.PingYin = items;
                    obj.FirstPingYin = items.ConvertAll(p => p.Substring(0, 1)).Distinct().ToList();
后面还有 416 行代码,解锁后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明

AI 解读

登录后可用,每次 10 积分,解读结果公开显示在下面。

还没有人解读过这个文件。