获取字符串的总数(以英文字符为准,中文等字符按2英文字符计算)

原创 2006年06月09日 12:40:00
/// <summary>
  /// 获取字符串的总数(以英文字符为准,中文等字符按2英文字符计算)
  /// </summary>
  /// <param name="str">字符串</param>
  /// <returns>返回字符串的总数</returns>
  public int GetStringCount(string str)
  {
   Regex regex = new Regex("[/u4e00-/u9fa5]+", RegexOptions.Compiled);
   char[] stringChar = str.ToCharArray();
   StringBuilder sb = new StringBuilder();
   int nLength = 0;
   for(int i = 0; i < stringChar.Length; i++)
   {
    if (regex.IsMatch((stringChar[i]).ToString()))
    {
     sb.Append(stringChar[i]);
     nLength += 2;
    }
    else
    {
     sb.Append(stringChar[i]);
     nLength = nLength + 1;
    }
   }
   return nLength;
  }

相关文章推荐

python利用utf-8编码判断中文英文字符(转)

下面这个小工具包含了判断unicode是否是汉字、数字、英文或者其他字符,全角符号转半角符号,unicode字符串归一化等工作。   #!/usr/bin/env python # ...
  • qinbaby
  • qinbaby
  • 2014年04月08日 19:01
  • 20205

c语言中判断中文还是英文字符

c语言中判断中文还是英文字符 2012-02-24 19:49 843人阅读 评论(0) 收藏 举报 在处理套打程序时用到TextOut,但TextOut无法自动换行,只好动手...

c语言中判断中文还是英文字符

在处理套打程序时用到TextOut,但TextOut无法自动换行,只好动手写代码,可是处理到汉字部分时卡住了,搜索网上判断汉字的帖子,都语焉不详,经过一下午的研究,终于整理出一个简单的教程。 其...

Java给出一个只由小写英文字符a,b,c...y,z组成的字符串S,求S中最长回文串的长度.

//给出一个只由小写英文字符a,b,c...y,z组成的字符串S,求S中最长回文串的长度. //回文就是正反读都是一样的字符串,如aba, abba等 import java.util.Scanner...
  • lxj9312
  • lxj9312
  • 2016年08月18日 17:07
  • 633

VS2015支持UTF-8 with BOM编码格式处理中文、西班牙文、法文等非英文字符

VS2015支持UTF-8 with BOM编码格式处理中文、西班牙文、法文等非英文字符 Detail: 在使用VS2015编译ImageMagicK库时,由于其中源码文件带有非英文字符串,导致VS编...

python利用utf-8编码判断中文英文字符

下面这个小工具包含了判断unicode是否是汉字、数字、英文或者其他字符,全角符号转半角符号,unicode字符串归一化等工作。   #!/usr/bin/env python # ...
  • WHACKW
  • WHACKW
  • 2015年10月28日 14:53
  • 594

java实现10进制转换为英文字符表示的26进制,得到唯一自增的英文字符串序列。

public class Demo { //java实现10进制转换为英文字符表示的26进制,得到唯一自增的英文字符串序列。 public static void main(String...
  • earbao
  • earbao
  • 2016年12月03日 00:59
  • 1472
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:获取字符串的总数(以英文字符为准,中文等字符按2英文字符计算)
举报原因:
原因补充:

(最多只允许输入30个字)