C#中如何验证输入是否为汉字(急)

pol000 2005-08-29 04:52:55
C#中如何验证输入是否为汉字。
...全文
386 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
mostice 2005-11-11
  • 打赏
  • 举报
回复
jinjazz(近身剪(充电中...)) 正解 找了小半天,相比之下,这是比较完整的.
usepc 2005-08-30
  • 打赏
  • 举报
回复
同意楼上
zzczh 2005-08-30
  • 打赏
  • 举报
回复
也支持正则!
linuxyf 2005-08-30
  • 打赏
  • 举报
回复
正则是正解
lovevsnet 2005-08-29
  • 打赏
  • 举报
回复
觉得还是正则简单:
private void textBox1_TextChanged(object sender, System.EventArgs e)
{
string pat=@"[\u4e00-\u9fff]";
Regex rg=new Regex(pat);
Match mh=rg.Match(textBox1.Text);
if(!mh.Success)
return;
MessageBox.Show("不许输入中文");
textBox1.Undo();

}
mgslovedreamsgogo 2005-08-29
  • 打赏
  • 举报
回复
同意
jinjazz 2005-08-29
  • 打赏
  • 举报
回复
private void button1_Click(object sender, System.EventArgs e)
{
byte[] bytes=System.Text.Encoding.Default.GetBytes(this.textBox1.Text);
if (bytes.Length==this.textBox1.Text.Length)
{
this.Text="不包含汉字";
}
else if(bytes.Length==this.textBox1.Text.Length*2)
{
this.Text="全是汉字";
}
else
{
this.Text="包含汉字和英文";
}
}
ohyear 2005-08-29
  • 打赏
  • 举报
回复
正刚表达式
if (System.Text.RegularExpressions.Regex.IsMatch(inputString,"[\u4e00-\u9fa5]"))
MessageBox.Show("您输入的是中文");
else
MessageBox.Show("您输入的不是中文");
"[\u4e00-\u9fa5]" 中文
rlhappy 2005-08-29
  • 打赏
  • 举报
回复
用JS吧。
function isChinese(str){
str = str.replace(" ", "");
for (i=0;i<str.length;i++)
{
if (str.charCodeAt(i)< 255)
{
return false;
}
}
return true;
}

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧