C#中怎么判别字符串是否是汉字
1.用汉字的UNICODE编码规模判别
汉字的UNICODE编码规模是4e00-9fbb,根据此规模也可以判别,详细代码如下:
[C#]纯文本检查
///
///用UNICODE编码规模判别字符是不是汉字
///
///<paramname=”text”>待判别字符或字符串
///真:是汉字;假:不是
publicboolCheckStringChineseUn(stringtext)
{
boolres=false;
foreach(chartintext)
{
if(t>=0x4e00&&t<=0x9fbb)
{
res=true;
break;
}
}
returnres;
}
2.用ASCII码判别
在ASCII码表中,英文的规模是0-127,而汉字则是大于127,根据这个规模能够判别,详细代码如下:// from https://zzzjtd.com/5694.html
[C#]纯文本检查
///
///用ASCII码规模判别字符是不是汉字
///
///<paramname=”text”>待判别字符或字符串
///真:是汉字;假:不是
publicboolCheckStringChinese(stringtext)
{
boolres=false;
foreach(chartintext)
{
if((int)t>127)
res=true;
}
returnres;
}
3.用正则表达式判别
用正则表达式判别也是根据汉字的UNICODE编码规模判别的,详细代码如下
[C#]纯文本检查
///
///用正则表达式判别字符是不是汉字
///
///<paramname=”text”>待判别字符或字符串
///真:是汉字;假:不是
publicboolCheckStringChineseReg(stringtext)
{
returnSystem.Text.RegularExpressions.Regex.IsMatch(text,@”[\u4e00-\u9fbb]+$”);
}