vb中,如何判断一个字符串是汉字还是英文
1个回答
展开全部
你可以用mid截取单个字符并用ASCII码判断:
n=asc(mid(str1,i,1))
if n>0 and n<255 then
'英文字母
else
'中文
end if
整个字符串你可以循环判断。
这是一个比较粗糙的范围,更加精准的判断:33-126为可打印的(即可显示的)英文字符,97-122为英文字母(小写),你可以根据字符串的实际内容来采用判断依据;负数是汉字(其实是最高位为1,VB识别为负数,转换成16进制就可以看到正确的编码了)
n=asc(mid(str1,i,1))
if n>0 and n<255 then
'英文字母
else
'中文
end if
整个字符串你可以循环判断。
这是一个比较粗糙的范围,更加精准的判断:33-126为可打印的(即可显示的)英文字符,97-122为英文字母(小写),你可以根据字符串的实际内容来采用判断依据;负数是汉字(其实是最高位为1,VB识别为负数,转换成16进制就可以看到正确的编码了)
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询