usingSystem;
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Text;
usingSystem.Text.RegularExpressions;//Regex针对方法一
//当用户输入一个字符串后,判断该字符串中有几个汉字
//\u4e00-\u9fa5汉字的范围。
//^[\u4e00-\u9fa5]$汉字的范围的正则
namespaceJudgeStringWordAmountEg
{
classProgram
{
staticvoidMain(string[]args)
{
//方法一:
//Console.WriteLine("请输入一串字符:");
//stringtest=Console.ReadLine();
//stringchina="";
//intnum=0;
//Regexrx=newRegex("^[\u4e00-\u9fa5]+$");
//foreach(charchintest)
//{
//if(rx.IsMatch(ch.ToString()))
//{
//num++;
//china=china+ch.ToString();
//}
//}
//if(num==0)
//Console.WriteLine("您输入的字符串中没有汉字!");
//else
//Console.WriteLine("输入的字符串中有{0}个汉字",num);
//方法二:
stringtemp;
stringword;
intnum=0;
Console.WriteLine("请输入一串字符:");
word=Console.ReadLine();
for(inti=0;i {
temp=word.Substring(i,1);
//Substring截取字符串从索引i处截取1个字符
byte[]str=System.Text.ASCIIEncoding.GetEncoding("gb2312").GetBytes(temp);
if(str.Length==2)
{
num++;
}
}
Console.WriteLine("输入的字符串中有{0}个汉字",num);
}
}
}
|
|