c#怎么判断字符串中包含汉字?

 我来答
Baby_原來
2018-03-09 · TA获得超过3402个赞
知道大有可为答主
回答量:1535
采纳率:94%
帮助的人:502万
展开全部
1、用ASCII码判断
  在 ASCII码表中,英文的范围是0-127,而汉字则是大于127,具体代码如下:

string text = "是不是汉字,ABC,柯乐义";for (int i = 0; i < text.Length; i++){ if ((int)text[i] > 127) { Console.WriteLine("是汉字"); }else{ Console.WriteLine("不是汉字"); }}
2、用汉字的 UNICODE 编码范围判断
  汉字的 UNICODE 编码范围是4e00-9fbb,具体代码如下:

string text = "是不是汉字,ABC,keleyi.com";char[] c = text.ToCharArray();for (int i = 0; i < c.Length;i++){ if (c[i] >= 0x4e00 && c[i] <= 0x9fbb) { Console.WriteLine("是汉字"); }else{ Console.WriteLine("不是汉字"); }}
3、用正则表达式判断
  用正则表达式判断也是用汉字的 UNICODE 编码范围,具体代码如下:

string text = "是不是汉字,ABC,keleyi.com";for (int i = 0; i < text.Length; i++){ if (Regex.IsMatch(text[i].ToString(), @"[\u4e00-\u9fbb]+{1}quot;)) { Console.WriteLine("是汉字"); }else{ Console.WriteLine("不是汉字"); }}
耀柏
2018-03-09 · TA获得超过163个赞
知道答主
回答量:238
采纳率:0%
帮助的人:103万
展开全部
using System.Text.RegularExpressions;//导入这个使用正则表达式的命名空间
Regex reg = new Regex(@"[\u4e00-\u9fa5]");//汉字正则的表达式。
string text1="";
console.write("请输入:");
string text1=console.Readline();
if (reg.IsMatch(text1))//判断是不是汉字的方法,
{
console.write(“你输入法的是汉字\n”);
}
else
{
console.write("你输入的不是汉字“);
}
同学,如果你想要关于正则的方法,与及表达式的话, 我可以发给你。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wjfcfy
2018-03-09 · TA获得超过552个赞
知道小有建树答主
回答量:646
采纳率:0%
帮助的人:626万
展开全部
using System.Text.RegularExpressions;//先导入这个使用正则表达式

Regex reg = new Regex(@"[\u4e00-\u9fa5]");//正则表达式
string str="smile 卡";
if (reg.IsMatch(str))
{
Console.WriteLine("有汉字");
}
else
{
Console.WriteLine("没汉字");
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
杞人沙舟
2018-03-09 · 超过34用户采纳过TA的回答
知道答主
回答量:333
采纳率:0%
帮助的人:132万
展开全部
看字符所占的字节
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
明净且朴实灬大熊猫4
2018-03-09
知道答主
回答量:27
采纳率:0%
帮助的人:0
展开全部
Regex regex = new Regex("^[\u4e00-\u9fa5]+$");
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式