C#教程

关注公众号 jb51net

关闭
首页 > 软件编程 > C#教程 > C#统计字符串汉字个数

C#统计字符串里中文汉字个数的方法

投稿:junjie

这篇文章主要介绍了C#统计字符串里中文汉字个数的方法,本文通过正则实现统计出一段字符串里中文字数,需要的朋友可以参考下

如何从C#获取字符串中汉字的个数?C#中使用正则表达式来从字符串中判断出汉字,然后计数,从而得到字符串中的汉字个数。

先看这段代码:

复制代码 代码如下:

//首先引用命名空间
using System.Text.RegularExpressions;

//定义一个函数,返回字符串中的汉字个数
public static int GetHanNumFromString(string str)
{
    int count = 0;
    Regex regex = new Regex(@"^[\u4E00-\u9FA5]{0,}$");

    for (int i = 0; i < str.Length; i++)
    {
        if (regex.IsMatch(str[i].ToString()))
        {
            count++;
        }
    }

    return count;
}


代码说明:
1、Unicode字符的\u4E00到\u9FA5之间为汉字编码,所以使用它来表示汉字的正则匹配范围。
2、字符串可以直接进行索引,索引得到的值的数据类型为char,所以str[i].ToString()是为了把char再度转换为字符串。
3、使用Regex的IsMatch方法,可以判断字符串是否与给定的正则表达式匹配,如果匹配成功则返回True,否则为False。

您可能感兴趣的文章:
阅读全文