var b = p.test(string)//true,说明有数字
p = /[a-z]/i
b = p.test(string)//true,说明有英文字母
p = /[0-9a-z]/i
b = p.test(string)//true,说明有英文字母或数字
1、使用正则表达式判断中文正则:[\u4E00-\u9FA5]英文正则:[A-Za-z]数字正则:[0-9]//验证是否是中文var pattern = new RegExp("[\u4E00-\u9FA5]+")var str = "中文字符"if(pattern.test(str)){alert('该字符串是中文')}//验证是否是英文var pattern2 = new RegExp("[A-Za-z]+")var str2 = "abcdefsgaaweg"if(pattern2.test(str2)){alert('该字符串是英文')}//验证是否是数字var pattern3 = new RegExp("[0-9]+")var str3 = "234234"if(pattern3.test(str3)){alert('该字符串是数字')}用下面这个,测试过了绝对好用!<html>
<head>
<script language="JavaScript" type="text/javascript">
function alnum(str) {
var alnum = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_'
for (var i = 0i <str.lengthi++) {
if (alnum.indexOf (str.charAt(i)) == -1) {
return false
}
}
return true
}
function isalnum(){
var reqWord = document.getElementById("reqWord").value
if(alnum(reqWord) == false){
alert("你输入的不是英文、数字或符号!")
}
return true
}
</script>
</head>
<body>
<input id="reqWord" type="text" value="">
<input type="button" onclick="isalnum()" value="OK">
</body>
</html>