利用JS判断字符串是否含有数字与特殊字符的方法小结
前言
本文主要介绍的是利用JS判断字符串是否含有数字与特殊字符的方法,文中有几种不同的方法,包括普通的JS验证法、正则表达式法,另外还有判断是否为浮点数的js函数,在最后还将简要介绍下isNAN函数的使用方法和例子,来一起学习学习吧。
一、正则表达式方法判断是否为数字,包括判断正整数:
functioncheckRate(input)
{
varre=/^[0-9]+.?[0-9]*$/;//判断字符串是否为数字,//若判断正整数,则后边是:/^[1-9]+[0-9]*]*$/
if(!re.test(input.rate.value))
{
alert("请输入数字(例:0.02)");
input.rate.focus();
returnfalse;
}
}
二、普通的JS函数方式:
functionBASEisNotNum(theNum)
{
if(BASEtrim(theNum)=="")
returntrue;
for(vari=0;i<theNum.length;i++){
oneNum=theNum.substring(i,i+1);
if(oneNum<"0"||oneNum>"9")
returntrue;
}
returnfalse;
}
三、判断是否是正数,也就是正整数:
functionBASEisNotInt(theInt)
{
theInt=BASEtrim(theInt);
if((theInt.length>1&&theInt.substring(0,1)=="0")||BASEisNotNum(theInt)){
returntrue;
}
returnfalse;
}
四、判断字符串是是否是数字和其它符号组成,比如“-”:
functionismonth(str)
{
for(ilen=0;ilen<str.length;ilen++)
{
if(str.charAt(ilen)<'0'||str.charAt(ilen)>'9')
{
if((str.charAt(ilen)!='-'))
returnfalse;
}
}
returntrue;
}
五、判断是否为浮点数:
functionBASEisNotFloat(theFloat)
{
len=theFloat.length;
dotNum=0;
if(len==0)
returntrue;
for(vari=0;i<len;i++){
oneNum=theFloat.substring(i,i+1);
if(oneNum==".")
dotNum++;
if(((oneNum<"0"||oneNum>"9")&&oneNum!=".")||dotNum>1)
returntrue;
}
if(len>1&&theFloat.substring(0,1)=="0"){
if(theFloat.substring(1,2)!=".")
returntrue;
}
returnfalse;
关于javascript的isNaN函数:用法规则:isNaN(expression:Object):Boolean。计算参数,如果值为NaN(非数字),则返回true。此函数可用于检查一个数学表达式是否成功地计算为一个数字。
可用性:FlashPlayer5;ActionScript1.0;参数expression:Object-要计算的布尔值、变量或其它表达式。返回Boolean-布尔值。
在提交表单中经常是这样用的:
<script>
if(isNaN(document.login.imgcode.value)){
alert('验证码不是数字!')
document.login.imgcode.focus();
returnfalse;
}
</script>
总结
以上就是利用JS判断字符串中是否含有数字和特殊字符的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。