用循环加MID函数,取出每一个字符,看它的ASCII码,0的是汉字,0的是非汉字。
成都创新互联公司主要从事做网站、网站建设、网页设计、企业做网站、公司建网站等业务。立足成都服务大理州,十多年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:13518219792
str = "hello,everybody. " 返回false,位置0。(不含汉字和汉语标点符号)
str = "hello,ererybody。 " 返回false,位置16。(最后一个句号是汉语标点符号)
先谢过大家了!
你可以用mid截取单个字符并用ASCII码判断:
n=asc(mid(str1,i,1))
if n0 and n255 then
'英文字母
else
'中文
end if
整个字符串你可以循环判断。
这是一个比较粗糙的范围,更加精准的判断:33-126为可打印的(即可显示的)英文字符,97-122为英文字母(小写),你可以根据字符串的实际内容来采用判断依据;负数是汉字(其实是最高位为1,VB识别为负数,转换成16进制就可以看到正确的编码了)
Imports System.IO
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim r As New StreamReader("C:\jq.TXT") '打开文件
Dim Mytxt As String = ""
Dim s As String
Do While r.Peek -1 '是否到文件尾
s = r.ReadLine '从打开的文件中读取一行内容
Mytxt = Mytxt s vbCrLf '逐行读取文本,并连接到变量Mytxt中
Loop
r.Close() '关闭对象
'判断是否与变量相等etjq,略了吧???
End Sub
End Class