如果只是这些普通字符,可以采用ASCll码比较,因为Ascll码基本包含所有的英文还有常用标点符号等,ascll码的取值范围为0-127.那么我们可以迭代你的这个字符串([em]e549[/em]今天,晴天啦!),得到每一个char,(接下
汉字unicode为\u4e00-\u9fa5
假设你的字符串s
定义新的字符串strnew
for (int i=0; i
Regex rx = new Regex("^[\u4e00-\u9fa5]$");
if (rx.IsMatch(s[i]))
{
strnew = strnew + s[i];
}
else
{} // 否
}
strnew 就是你想要的
高手用"正则表达式",不过看了你不是高手了,这里只是提一下有正则表达式这个牛逼的东西.用楼上说的ascll码也是可以的不怕麻烦,而且不在乎效率的话
楼上的写得差不多了 我再补充一下吧:
string strOld = "1我爱你23";
string strNew="";
char[] charArray = strOld .ToCharArray();
for (int i=0; i
Regex rx = new Regex("^[\u4e00-\u9fa5]$");
if (rx.IsMatch(charArray [i]))
{
strNew+= charArray [i]
}
}