一、直接将某字符用asc转为ASCII码,如果是英文,他应该是0-127的范围,而汉字则是一个比较大的数字,所以可以使用以下代码来判断: if abs(asc(whichChar))>127 then Response.write whichChar & "是一个汉字" else Response.write whichChar & "不是一个汉字" end if 二、汉字的UNICODE编码范围是4e00-9fa5,所以使用正则表达试就可以判断一个汉字是不是汉字了。 Set RegExpObj=new RegExp RegExpObj.Pattern="^[\u4e00-\u9fa5]+$" ReGCheck=RegExpObj.test(whichChar) Set RegExpObj=nothing if ReGCheck then Response.write whichChar & "是汉字" else Resposne.write whichChar & "不是汉字" end if 全为汉字 <SCRIPT LANGUAGE="vbScript"> function isGB(x) if len(escape(x)) /len(x)=6 then isGB=true else isGB=false end function '测试 alert(isGB("汉字")) alert(isGB("汉 字")) alert(isGB("汉a字b")) alert(isGB("汉字!")) dim test,t1,t2 t1=timer() for i=1 to 10 * 10000 test=(isGB("汉字!")) next t2=timer() alert(t2-t1) </SCRIPT>
########################
if instr(a,b)>0 then 正确 end if 参考: 返回某字符串在另一字符串中第一次出现的位置。 InStr([start, ]string1, string2[, compare]) 参数 start 可选项。数值表达式,用于设置每次搜索的开始位置。如果省略,将从第一个字符的位置开始搜索。如果 start 包含 Null,则会出现错误。如果已指定 compare,则必须要有 start 参数。 string1 必选项。接受搜索的字符串表达式。 string2 必选项。要搜索的字符串表达式。 compare 可选项。指示在计算子字符串时使用的比较类型的数值。有关数值,请参阅“设置”部分。如果省略,将执行二进制比较。 设置 compare 参数可以有以下值: 常数 值 描述 vbBinaryCompare 0 执行二进制比较。 vbTextCompare 1 执行文本比较。 返回值 InStr 函数返回以下值: 如果 InStr 返回 string1 为零长度 0 string1 为 Null Null string2 为零长度 start string2 为 Null Null string2 没有找到 0 在 string1 中找到 string2 找到匹配字符串的位置 start > Len(string2) 0
#####################
例子
<%
if instr("1,1,1",",")> 0 then
response.write "包含"
else
response.write "不包含"
end if
%>
评论前必须登录!
注册