在c#中判断字符串中是否包含日文和中文

来源:百度文库 编辑:神马文学网 时间:2024/04/29 23:15:13
from:http://lbttbl.spaces.live.com/blog/cns!88D6C32808C059C6!112.entry
代码:
string s="中文にほんニホンABC";
foreach (char c in s)
{
if (c >= 0x4E00 && c<= 0x9FA5)MessageBox.Show(c+"是汉字");
else if(c>=0x3040&&c<=0x309F)MessageBox.Show(c+"是平假名");
else if(c>=0x30A0&&c<=0x30FF)MessageBox.Show(c+"是片假名");
}
相关问题:
1.0x4E00,0x9FA5这些值是怎么得到的?
http://www.steve-and-pattie.com/esperantujo/unicode/这个网址能查到所有文字的unicode编码。
2.像“雑誌”这种日文中的汉字能否判断?
访问问题1中的网址可以发现4E00-9FA5这个区段被称为CJK Unified Ideographs。CJK是Chines, Japanese和Korean的缩写。从名称就可以看出中文汉字和日文汉字是被放在一起编码的,所以用上面的代码判断“雑誌”也会得出汉字的结果。路过的高手有解决这个问题的办法请赐教。转两篇文章,看似和这个问题相关,看懂了也许会找到答案。
http://www.ts.net.cn/bbs/NewsDetail.asp?id=99129  日本语处理
http://blog.csdn.net/Whisk/archive/2005/11/02/521119.aspx  判断全角日文文字的函数