zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    预分频之三
    MySQL超时配置
    随机森林深入理解
    决策树算法——ID3
    指数平滑法
    最小二乘法的Java实现
    JS实战
    CSS布局实战
    Win7 Python开发环境搭建
    神经网络正向传播与反向传播公式
  • 原文地址:https://www.cnblogs.com/lztkdr/p/2597787.html
Copyright © 2011-2022 走看看