js 正则表达式 判断是否是纯数字
妈蛋 不想学js了
最讨厌写总结了
今天哥哥强迫我学了正则表达式 有点难理解 调来调去的
<html> <head> <title>账号注册</title> <script> function paramArrayNotNull(paramArray,paramNaneArray){ for (var start=0;start<paramArray.length;start++){ if (paramArray[start]==""){ alert("输入"+paramNaneArray[start]+"不能为空"); return false; } } return true; } function judgeIsNum (srt){ var pattern=/^d+$/g; //正则表达式 ^ 代表从开始位置起 $ 末尾 + 是连续多个 d 是数字的意思 不懂的话可以去百度正则表达式表 var result= srt.match(pattern);//match 是匹配的意思 用正则表达式来匹配 if (result==null){ return false; }else{ return true; } } function baobao() { var ueserName=document.getElementById("ueserName").value; var password=document.getElementById("password").value; var repassword=document.getElementById("repassword").value; var age=document.getElementById("age").value; var phone=document.getElementById("phone").value; var Email=document.getElementById("Email").value; var idCard=document.getElementById("idCard").value; var paramArray=[ueserName,password,repassword,age,phone,Email,idCard]; var paramNaneArray=["用户名","密码","确认","年龄","电话号码","邮箱","身份证号码"]; if ( ! paramArrayNotNull(paramArray,paramNaneArray) ){ return false; } if(ueserName.match(/^w+$/g) == null){ alert("输入的用户名只能用英文,数字和"_""); return false; } if (repassword !=password){ alert("确认密码与密码不一致"); return false; } if ( age < 17 || age > 80){ alert("年龄超出使用范围<18~80>"); return false; } if (phone.length !=8 && phone.length !=11){ alert("电话号码不合法"); return false; } if (! judgeIsNum(phone)){ alert("输入的号码不是纯数字"); return false; } if (Email.indexOf("@")==-1){ alert("邮箱不合法"); return false; } var judgeIdSrt=""; if (idCard.indexOf("X")==17){ judgeIdSrt=idCard.substring(0,17); //substring 是截取的意思 截取0到17位的数字 但不包括第17位 }else{ judgeIdSrt= idCard; } if (! judgeIsNum(judgeIdSrt)){ alert("输入的身份证号码不是纯数字"); return false; } } </script> </head> <body> <form action="http://www.baidu.com/" method="post" onsubmit="return baobao();"> 用户名: <input type="text" name="ueserName" id="ueserName"/><br/> 密码: <input type="text" name="password" id="password"/><br/> 确认密码: <input type="text" name="repassword" id="repassword"/><br/> 年龄: <input type="text" name="age" id="age"/><br/> 电话号码: <input type="text" name="phone" id="phone"/><br/> 邮箱: <input type="text" name="Email" id="Email"/><br/> 身份证号码: <input type="text" name="idCard" id="idCard"/><br/> <input type="button" value="重新输入"/> <input type="submit" value="注册"/> </form> </body> </html>
正则表达式是由 / 里面是条件符号 /g; 组成的
例如:
<span style="font-size:14px;color:#006600;"><strong>var pattern=/^d+$/g; //正则表达式 ^ 代表从开始位置起 $ 末尾 + 是连续多个 d 是数字的意思 不懂的话可以去百度正则表达式表</strong></span>
<span style="font-size:14px;color:#006600;"><strong>要用match 来匹配 </strong></span>
<pre name="code" class="javascript"><span style="font-size:14px;color:#006600;"><strong>var result= srt.match(pattern);//match 是匹配的意思 用正则表达式来匹配</strong></span>
<span style="font-size:14px;color:#006600;"><strong>substring 是截取的意思 截取0到17位的数字 但不包括第17位</strong></span>
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。