up:: Java正则表达式元字符多次重复匹配

一:正则表达式在JavaScript中的应用范例:

例如前台界面提交表单的时候,需要对表单中输入框内容进行校验。符合输入规则,则校验成功,提交表单;不符合输入规则,则校验不成功,提示相关错误信息。

正则表达式常用于校验这个需求

index.html:

(1)JavaScript中定义正则表达时对象:var regex1 = /^[\u4e00-\u9fa5]{2,8}$/; 即定义在 俩斜杠中间,并且用一个变量去接收

(2)JavaScript中的正则表达式对象的 test()方法 用于校验字符串是否符合正则表达式的校验规则;

 
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Insert title here</title>
    </head>
    <body>
 
    	<form action="#" method="post" id="frmInfo">
    		<div id="err" style="color:red">
    		</div>
    		<div>
    			姓名:<input id="name" name="name" />
    		</div>
    		<div>
    			身份证:<input id="idNo" name="idNo" />
    		</div>
    		<div>
    			<input type="submit"/>
    		</div>
    	</form>
    	<script type="text/javascript">
    		document.getElementById("frmInfo").onsubmit = function(){
    			//在JavaScript中定义的正则表达式对象,只需要在两个斜杠中间书写正则表达式后,就能在JavaScript中获得一个正则表达式对象,
    			// 然后用一个变量去接受就可以了;
    			var regex1 = /^[\u4e00-\u9fa5]{2,8}$/; // 校验姓名的正则表达时
    			var regex2 = /^[1234568]\d{16}[0-9xX]$/;// /^[1234568]\d{16}[\dxX]$/这样写,经过实测也是可以的哦
    			var name = document.getElementById("name").value;
    			var idNo = document.getElementById("idNo").value;
    			if(regex1.test(name) == false){// JavaScript的正则表达式对象提供了test()方法,返回值为true(匹配)或false(不匹配);
    				document.getElementById("err").innerHTML = "无效姓名";
    				return false;
    			}else if(regex2.test(idNo) == false){
    				document.getElementById("err").innerHTML = "无效idNo";
    				return false;
    			}
    			else{
    				return true;
    			}
 
    		}
 
    	</script>
    </body>
    </html>

上面,对name和id进行了校验,像这种逐梯次的挨个校验,以前做项目的时候也采取过这种if else的挨个判断的结构,这种结构可以很好地定位究竟是哪一个输入框出了错,方便弹出提示;

效果:


其实还好,在JavaScript中进行校验输入框的时候,采取即插即用,随用随取的态度应该就可以了吧~~~

然后,JavaScript中正则表达式的应用肯定有很多其他方面,后续补充……

然后,表单输入项校验这个工作一般习惯于交给前端解决?