如题所述
你可以用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进制就可以看到正确的编码了)
温馨提示:答案为网友推荐,仅供参考