首页 > 代码库 > 几个常用的正则验证

几个常用的正则验证

这里不多少上代码 代码里面有注释

/**
 * 页面验证 id 文本框ID msg提示信息  status 状态
 * status 状态  T 固定电话  
 *           M 手机号码
 *           S 身份证信息
 *           D 时间日期 yyyy-MM-dd
 */
function kyanzheng(id,msg,status){
	var partten;
	var zuoji=true;
	if("T"==status){
		partten=/^([0-9]{3,4}-)?[0-9]{7,8}$/;
		zuoji=partten.test($('#'+id).val()); 
	}
	if("M"==status){
		partten=/^([1]{1})?([0-9]{10})$/;
		zuoji=partten.test($('#'+id).val()); 
		}
	if("D"==status){
		partten=/((^((1[8-9]\d{2})|([2-9]\d{3}))([-\/\._])(10|12|0?[13578])([-\/\._])(3[01]|[12][0-9]|0?[1-9])$)|(^((1[8-9]\d{2})|([2-9]\d{3}))([-\/\._])(11|0?[469])([-\/\._])(30|[12][0-9]|0?[1-9])$)|(^((1[8-9]\d{2})|([2-9]\d{3}))([-\/\._])(0?2)([-\/\._])(2[0-8]|1[0-9]|0?[1-9])$)|(^([2468][048]00)([-\/\._])(0?2)([-\/\._])(29)$)|(^([3579][26]00)([-\/\._])(0?2)([-\/\._])(29)$)|(^([1][89][0][48])([-\/\._])(0?2)([-\/\._])(29)$)|(^([2-9][0-9][0][48])([-\/\._])(0?2)([-\/\._])(29)$)|(^([1][89][2468][048])([-\/\._])(0?2)([-\/\._])(29)$)|(^([2-9][0-9][2468][048])([-\/\._])(0?2)([-\/\._])(29)$)|(^([1][89][13579][26])([-\/\._])(0?2)([-\/\._])(29)$)|(^([2-9][0-9][13579][26])([-\/\._])(0?2)([-\/\._])(29)$))/;
		zuoji=partten.test($('#'+id).val()); 
		}
	if("S"==status){//身份证号码 对应的还有护照号码
		if($('#typecode').val()==108){
			partten = /^([0-9]{17})?[x-yX-Y0-9]{1}$/;
			zuoji=partten.test($('#'+id).val()); 
		}
	}
	
	if(!zuoji){
   	 $.messager.alert('提示',msg+"格式不正确",'info',function(){
   		$('#'+id).select();
   	});
   	 $('#'+id).css("color","red");//字体变色
		return false;
    }else{
    	 $('#'+id).css("color","black");//字体变色
    }

那个 最长的是时间的验证不过我还是新手搞不明白 正则表达式太长的话怎么新行继续  如果你们拷贝的话 最长的那个 要在同一行才行

几个常用的正则验证