js判断字符串中是不是有数字和字母
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js判断字符串中是不是有数字和字母相关的知识,希望对你有一定的参考价值。
问题分析:
在javascript脚本语言中判断一个字符串中是否即包含数字亦包含字母,可以使用正则(RegExp对象)的方式,如果仅仅只是做判断,要求返回true或者false的话,那么使用RegExp对象的test方法即可。
举例如下:
//定义字符串var str1 = \'123\'; //第一个字符串,仅有数字。
var str2 = \'abc\'; //第二个字符串,仅有字母。
var str3 = \'a1b2c3\'; //第三个字符串,既有数字亦有字母。
//定义验证规则,由于字符串数字和字母的顺序可能不同。
//也有可能字母和数字中间还包含了其他字符。故将验证规则分开定义。
var regNumber = /\\d+/; //验证0-9的任意数字最少出现1次。
var regString = /[a-zA-Z]+/; //验证大小写26个字母任意字母最少出现1次。
//验证第一个字符串
if (regNumber.test(str1) && regString.test(str1))
console.log(\'str1:验证成功\');
else
console.log(\'str1:验证失败\');
//验证第二个字符串
if (regNumber.test(str2) && regString.test(str2))
console.log(\'str2:验证成功\');
else
console.log(\'str2:验证失败\');
//验证第三个字符串
if (regNumber.test(str3) && regString.test(str3))
console.log(\'str3:验证成功\');
else
console.log(\'str3:验证失败\');
运行结果:
总结:
由于第一个字符串仅有数字,第二个字符串仅有字母,都不符合数字和字母都必须存在的需求,所以执行结果是“验证失败”,而第三个字符串,既包含字母亦包含数字,所以执行结果是“验证成功”。
var p = /[0-9]/; var b = p.test(string);//true,说明有数字
var p = /[a-z]/i; var b = p.test(string);//true,说明有英文字母
var p = /[0-9a-z]/i; var b = p.test(string);//true,说明有英文字母或数字
JavaScript,简称JS。
JS是一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在html(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。
为了取得技术优势,微软推出了JScript,CEnvi推出ScriptEase,与JavaScript同样可在浏览器上运行。为了统一规格,因为JavaScript兼容于ECMA标准,因此也称为ECMAScript。
参考技术B用js中的正则验证就可以了,举例:比如输入的内容中包含数字和字母提示输入正确,反之则提示输入错误
<script type="text/javascript">var oInp=document.getElementsByTagName('input')[0];
oInp.onkeyup=function(e)
e=e||event;
if(e.keyCode==13)
var val=oInp.value;
var reg=/[a-zA-Z]+(?=\\d+)|\\d+(?=[a-zA-Z]+)/g;
if(reg.test(val))
alert('输入正确!')
else
alert('输入错误!')
;
</script>
上面的例子只有输入的内容同时包含数字和字母才能匹配否则错误
以上是关于js判断字符串中是不是有数字和字母的主要内容,如果未能解决你的问题,请参考以下文章