• Asp.Net中获取 字符串中中英字符的长度


    第一种方法:
            /// <summary>
            /// 获取字符串中英文字符的长度,一个中文占2个字符长度
            /// </summary>
            /// <param name="strWithEnglishAndChinese">字符串</param>
            /// <returns></returns>
            public static int GetEnAndCnLength(string strWithEnglishAndChinese)
            {
                int lng = 0;
                Regex reg = new Regex("[\u4E00-\u9FA5]");
                char[] chrs = strWithEnglishAndChinese.ToCharArray();
                foreach (char c in chrs)
                {
                    if (reg.IsMatch(c.ToString()))
                    {
                        lng += 2;
                    }
                    else
                    {
                        lng += 1;
                    }
                }
                return lng;
            }
    第二种方法:
       /// <summary>
            /// 获取中英文混合字符串的文字长度(1个英文占1个长度,1个汉字占2个长度)
            /// </summary>
            /// <param name="stringWithEnglishAndChinese">中英文混合的字符串</param>
            /// <returns>字符串长度(1个英文占1个长度,1个汉字占2个长度)</returns>
            public static int GetEnglishLength(string stringWithEnglishAndChinese)
            {
                int lng = 0;
                for (int i = 0; i < stringWithEnglishAndChinese.Length; i++)
                {
                    byte[] b = System.Text.Encoding.Default.GetBytes(stringWithEnglishAndChinese.Substring(i, 1));
                    if (b.Length > 1)
                        lng += 2;
                    else
                        lng += 1;
                }
                return lng;
            }

    说明:方法二没有什么说的,完全正确的。方法一中,如果有中文标点符号的话,会出错,统计的字符数量不正确。

                                                     摘自http://hi.baidu.com/lost2happy/item/e1b6a75bfa52570fe6c4a591

  • 相关阅读:
    html5shiv.js-让IE浏览器支持HTML5标准
    CSS2系列:外边距合并问题(margincollapse)
    HTML5:离线存储(缓存机制)-IndexDB
    CSS3系列:流式(弹性)布局(flex布局)
    Sublime Text 3 常用插件以及安装方法(转)
    后台配置参数写在文件上
    20160414
    2016413
    20160412
    网页设计素材网站
  • 原文地址:https://www.cnblogs.com/lztkdr/p/2597787.html
Copyright © 2020-2023  润新知