JavaScript正则表达式

什么是正则表达式

正则表达式是一种可以用于文字模式匹配和替换的强有力的工具。是由一系列普通字符和特殊字符组成的能明确描述文本字符串的文字匹配模式。

正则表达式并非一门专用语言,但也可以看作是一种语言,它可以让用户通过使用一系列普通字符和特殊字符构建能明确描述文本字符串的匹配模式。除了简单描述这些模式之外,正则表达式解释引擎通常可用于遍历匹配,并使用模式作为分隔符来将字符串解析为子字符串,或以智能方式替换文本或重新设置文本格式。正则表达式为解决与文本处理有关的许多常见任务提供了有效而简捷的方式。

 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>javascript正则表达式</title>    
	<script type="text/javascript">
		//年龄
		function isAge(obj){
			if(/^[0-9]{1,3}$/.test(obj.value)){
				document.getElementById("age_error").innerHTML ="正确";
			}else{
				document.getElementById("age_error").innerHTML = "必须是小于或等于3位的数字";
				return false;
			}
			return true;
		}
		//数字
		function isNumber(obj){
			if( /^\d*\.?\d+$/.test(obj.value)){
				document.getElementById("number_error").innerHTML ="正确";
			}else{
				document.getElementById("number_error").innerHTML ="必须是数字";
				return false;
			}
			return true;
		}
		//邮编
		function isZip(obj){
			var reg = /^\d{6}$/;
			if(reg.test(obj.value)){
				document.getElementById("zip_error").innerHTML ="正确";
			}else{
				document.getElementById("zip_error").innerHTML ="必须是6位数字";
			}
		}
		//手机号,电话号码
		function isMobile(obj){
			var reg = /^\d{11,12}$/;
			if(reg.test(obj.value)){
				document.getElementById("mobile_error").innerHTML ="正确";
			}else{
				document.getElementById("mobile_error").innerHTML ="必须是11或12位数字";
			}
		}
		//身份证
		function isNum15_Num18(obj){
			if(/^\d{15}$/.test(obj.value) || /^\d{17}(?:\d|x)$/.test(obj.value)){
				document.getElementById("num15_Num18_error").innerHTML ="正确";
			}else{
				document.getElementById("num15_Num18_error").innerHTML ="必须是15或18位数字";
			}
		}
		//字母或数字
		function isCharOrNum(obj){
			var reg = /^\w+$/;
			if(reg.test(obj.value)){
				document.getElementById("charOrNum_error").innerHTML ="正确";
			}else{
				document.getElementById("charOrNum_error").innerHTML ="必须是字母或数字";
			}
		}
		//Email
		function isEmail(obj){
			var reg = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
			if(reg.test(obj.value)){
				document.getElementById("email_error").innerHTML ="正确";
			}else{
				document.getElementById("email_error").innerHTML ="Email格式不正确";
			}
		}
	</script>
  </head>
  
  <body>
  	<h2>javascript正则表达式</h2>
    <table>
    	<tr>
    		<td>年龄</td>
    		<td><input type="text" name="age" οnblur="isAge(this)"></td>
    		<td><div id="age_error"></div></td>
    	</tr>
    	<tr>
    		<td>数字</td>
    		<td><input type="text" name="number" οnblur="isNumber(this)"></td>
    		<td><div id="number_error"></div></td>
    	</tr>
    	<tr>
    		<td>邮编</td>
    		<td><input type="text" name="zip" οnblur="isZip(this)"></td>
    		<td><div id="zip_error"></div></td>
    	</tr>
    	<tr>
    		<td>手机号/电话号码</td>
    		<td><input type="text" name="mobile" οnblur="isMobile(this)"></td>
    		<td><div id="mobile_error"></div></td>
    	</tr>
    	<tr>
    		<td>身份证</td>
    		<td><input type="text" name="num15_Num18" οnblur="isNum15_Num18(this)"></td>
    		<td><div id="num15_Num18_error"></div></td>
    	</tr>
    	<tr>
    		<td>字母或数字</td>
    		<td><input type="text" name="charOrNum" οnblur="isCharOrNum(this)"></td>
    		<td><div id="charOrNum_error"></div></td>
    	</tr>
    	<tr>
    		<td>Email</td>
    		<td><input type="text" name="email" οnblur="isEmail(this)"></td>
    		<td><div id="email_error"></div></td>
    	</tr>
    </table>
  </body>
</html>

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值