C#获得字符串首字符字母(大写)

        /// <summary>
        /// 获得字符串首字符字母(大写);
        /// </summary>
        /// <param name="cnChar"></param>
        /// <returns></returns>
        public string GetStringFirstSpell(string cnChar)
        {
            //除字母、数字、汉字以外的返回"*"
            var result = "*";

            if (string.IsNullOrEmpty(cnChar.Trim()))
                return result;

            cnChar = cnChar.Trim().Substring(0, 1);
            byte[] arrCn = Encoding.Default.GetBytes(cnChar);

            //首字为字符,占一个字节
            if (arrCn.Length <= 1)
            {
                //大写英文字母
                if ((short)arrCn[0] >= 65 && (short)arrCn[0] <= 90)
                    return cnChar;

                //小写英文字母
                if (arrCn[0] >= 97 && arrCn[0] <= 122)
                    return Encoding.Default.GetString(new byte[] { (byte)((short)arrCn[0] - 32) });

                //数字
                switch (cnChar)
                {
                    case "1":
                        result = "Y";
                        break;
                    case "2":
                        result = "E";
                        break;
                    case "3":
                    case "4":
                        result = "S";
                        break;
                    case "5":
                        result = "W";
                        break;
                    case "0":
                    case "6":
                        result = "L";
                        break;
                    case "7":
                        result = "Q";
                        break;
                    case "8":
                        result = "B";
                        break;
                    case "9":
                        result = "J";
                        break;
                }
                return result;
            }
            //首字为汉字,占两个字节
            else
            {
                int area = (short)arrCn[0];
                int pos = (short)arrCn[1];
                int code = (area << 8) + pos;
                int[] areacode = { 45217, 45253, 45761, 46318, 46826, 47010, 47297, 47614, 48119, 48119, 49062, 49324, 49896, 50371, 50614, 50622, 50906, 51387, 51446, 52218, 52698, 52698, 52698, 52980, 53689, 54481 };
                for (int i = 0; i < 26; i++)
                {
                    int max = 55290;
                    if (i != 25) max = areacode[i + 1];
                    if (areacode[i] <= code && code < max)
                    {
                        return Encoding.Default.GetString(new byte[] { (byte)(65 + i) });
                    }
                }
                return result;
            }
        }

有时候需要对汉字获取其拼音首字母,可以用以上的方法。

时间: 2024-10-20 05:59:43

C#获得字符串首字符字母(大写)的相关文章

C# 字符串首字符大写

原文:C# 字符串首字符大写 我找到一些把字符串首字符大写的方法. 假如需要把字符串 "red" 转换为 "Red",把 "red house" 转为 "Red house" 或者单词的第一个大写,下面就是我从网上看到的技术. public static string FirstCharToUpper(string input) { if (String.IsNullOrEmpty(input)) throw new Argu

Upcase 将edit1中的每个字符串改为首字母大写

//将edit1中的每个字符串改为首字母大写 procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);begin    with Sender as Tedit do     if (text = '') or (text[selstart] = ' ') or ( sellength = length( text ) )then     if Key in ['a'..'z'] then Key := Upcase(Key)

[代码收集]将字符串中字符按大写字母隔开

/// <summary> /// Splits pascal case, so "FooBar" would become "Foo Bar" /// </summary> public static string SplitPascalCase(this string input) { if (string.IsNullOrEmpty(input)) { return input; } return Regex.Replace(input

Css中如何使英文和拼音变成全大写、全小写和首字母大写?

想要实现英文和中文拼音变成全大写.全小写和首个字母大写,需要用到 css中text-transform样式属性,接下来介绍一下 1.text-transform的值 1)Capitalize:英文拼音的首字母大写 2)Uppercase:英文拼音字母全大写 3)Lowercase:英文拼音字母全小写 2.text-transform语法 text-transform:+值类型, 如:text-transform:Capitalize: 3.text-transform的简单使用 1)英文首字母大

CSS中使用text-transform实现首字母大写

CSS中首字母大写怎么实现?日常生活中需求方对英文的要求比较多,有的时候需要让英文单词或拼音首个字母大写;有的时候需要让全文中英文单词全大写或小写.这时候我们就需要text-transform属性了.好了废话不多说,直接看例子吧. CSS代码: /*首字母大写*/ .a {text-transform:capitalize;} /*全都是大写*/ .b {text-transform:uppercase;} /*全都是小写*/ .c {text-transform:lowercase;} HTM

设置、取消word英文首字母大写

Word修改 方案一 shift + F3连续使用,可将英文设置为“首字母大写”.“全部大写”.“全部小写”三种模式 方案二 文件 ==> 选项 ==> 校对 ==> 自动更正选项 ==> 取消勾选“首句字母大写” WPS中修改 工具 ==> 选项 ==> 编辑 ==> 自动更正 ==> 取消键入时自动进行首字母大写更正 为尾部空格添加下划线 文件  ==> 选项  ==> 高级  ==> 以下对象的布局选项  ==> 勾选“为尾部空

JS replace()方法-字符串首字母大写

replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串. replace()方法有两个参数,第一个参数是正则表达式,正则表达式如果带全局标志/g,则是代表替换所有匹配的字符串,否则是只替换第一个匹配串.第二个参数可以是字符串,也可以是函数.$1.$2...表示与正则表达式匹配的文本. There are many ways we can make a difference. Global change starts with you. Sign up f

MySQL通过函数获取字符串汉字拼音首字母大写字符串

DELIMITER $$ DROP FUNCTION IF EXISTS `Fun_GetPY`$$ CREATE FUNCTION `HIS`.`Fun_GetPY` (in_string VARCHAR(21845)) RETURNS VARCHAR(21845) CHARSET utf8 BEGIN #截取字符串,每次做截取后的字符串存放在该变量中,初始为函数参数in_string值 DECLARE tmp_str VARCHAR(21845) CHARSET gbk DEFAULT ''

python字符串的操作(去掉空格strip(),切片,查找,连接join(),分割split(),转换首字母大写, 转换字母大小写...)

#可变变量:list, 字典#不可变变量:元祖,字符串字符串的操作(去掉空格, 切片, 查找, 连接, 分割, 转换首字母大写, 转换字母大小写, 判断是否是数字字母, 成员运算符(in / not in))字符串使用时用单引号或者双引号括起来: var1 = 'hello' var2 ="world" 字符串不能修改值, 如下例所示: 以下是字符串常用的一些操作. 1. 去掉空格str.strip() # 去掉两边的空格和换行符str.strip('a') # 去掉两边指定的字符st