俺写了一个长度check的正则表达式: \w|\W{0,10}
可是输入 10个全角字符 这个正则表达式竟也能过,不知道怎么改才能正确识别全角字符的长度.
不要用正则,得先判断是否是中文,然后再计算长度
// 获得用户输入的内容的长度
function TextLength(ChangeString)
{
var text = ChangeString.replace(/[^\x00-\xff]/g,**);
return text.length;
}
C#使用Unicode编码,一个全角字符的长度是1而不是2。