js基础--正则验证

<script type="text/javascript">
			
			var reg = new RegExp("^ Hello World $");  //匹配 Hello World 
			var text = " Hello World ";
			var flag = reg.test(text);
			//alert(flag);//true
			
			//reg = /^\d$/;
			reg = new RegExp("^\\d$")  // \d匹配0-9的所有数字
			text=1;
			flag=reg.test(text);alert(flag);//true

reg = new RegExp("^.$")     //.匹配所有
			text="aa";
flag=reg.test(text);alert(flag);

reg = /^[a-z]$/;     //[a-z]匹配一个小写字母
			text="1";
			flag=reg.test(text);
alert(flag);//false
</script>

. 匹配任意字符
\d 匹配0-9所有数字
\w 匹配字母、数字、下划线
\s 匹配所有空白符
\b 匹配单词开始或结束
[a-z] 匹配一个小写字母
[A-Z ] 匹配一个大写字母
[a-zA-Z] 匹一个字母不管大小写
[abc] 匹配方括号之间的任意一个字符
[^abc] 匹配不在方括号之间的任意一个字符
[u4e00-u9fa5] 匹配中文

.     匹配任意字符
\d    匹配0-9所有数字
\w    匹配字母、数字、下划线
\s  匹配所有空白符
\b  匹配单词开始或结束
[a-z]  匹配一个小写字母
[A-Z ]  匹配一个大写字母
[a-zA-Z]  匹一个字母不管大小写
[abc]  匹配方括号之间的任意一个字符
[^abc]  匹配不在方括号之间的任意一个字符
[u4e00-u9fa5]  匹配中文


+  一个或多个
*  0到多个
?  0到一个
{2,} 2到多个
{3,}3到多个
{3,13}  3到13个
{3}  3个

js正则验证

<!DOCTYPE html>
<html>
  <head>
    <title>hw3.html</title>
	
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="this is my page">
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    
    <link rel="stylesheet" type="text/css" href="hw.css">

  </head>
  
  <body>
    <form>
       用户名<input id="username" name="username">  <span id="u-id" ></span>
    <Br>
    密码<input id="password" type="password" name="password"> <span id="p-sd"></span>
    <Br>
    邮箱<input id="email" name ="email"><span id ="e-mail"></span>
    <Br>
    电话<input id ="tel" name="tel"><span id ="tel-"></span>
    <Br>
    身份证<input id="idcard" name="idcard"><span id=id-card></span>
    <Br>
    <input type="button" id="submit_btn" value="提交">
    </form>
    
    <script type="text/javascript">
    	document.getElementById("submit_btn").onclick=function() {
    		var username = document.getElementById("username").value;
    		var password = document.getElementById("password").value;
    		var email =document.getElementById("email").value;
    		var tel=document.getElementById("tel").value;
    		var idcard = document.getElementById("idcard").value;
    		var ureg =/^\w{3,16}$/;
    		var preg =/^\w{6,18}$/;
    		var ereg =/^\d{4,12}@[a-z]+.com$/;
    		var treg =/^\d{11}$/;
    		var ireg =/^\d{18}$/;
    		var flag=true;
    		if( ! ureg.test(username)) {
    			document.getElementById("u-id").innerHTML = "用户名必须是3-16位的数字字母下划线";
    			flag = false;
    		}else {
    			document.getElementById("u-id").innerHTML = "";
    		}
    		
    		if( ! preg.test(password)) {
    			document.getElementById("p-sd").innerHTML = "密码必须是6-18位的数字字母下划线";
    			flag = false;
    		}else {
    			document.getElementById("p-sd").innerHTML = "";
    		}
    		
    		if( ! ereg.test(email)) {
    			document.getElementById("e-mail").innerHTML = "非法邮箱";
    			flag = false;
    		}else {
    			document.getElementById("e-mail").innerHTML = "";
    		}
    		
    		if( ! treg.test(tel)) {
    			document.getElementById("tel-").innerHTML = "电话必须11位";
    			flag = false;
    		}else {
    			document.getElementById("tel-").innerHTML = "";
    		}
    		
    		if( ! ireg.test(idcard)) {
    			document.getElementById("id-card").innerHTML = "身份证必须18位";
    			flag = false;
    		}else {
    			document.getElementById("id-card").innerHTML = "";
    		}
    		
    		if(flag){
    			alert("提交给服务器");
    		}
    	}
    	
     </script>
  </body>
  
</html>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值