前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >JS经常使用正則表達式【分享】

JS经常使用正則表達式【分享】

作者头像
全栈程序员站长
发布2022-07-07 16:55:56
5050
发布2022-07-07 16:55:56
举报

大家好,又见面了,我是全栈君。

工作中JS经常使用表达式: 1)2010-09-10类型日期校验 2)推断正整数。字符串长度 3)校验长度,和是否空 4)推断字符串是否为空 5)比較字符大小 6)推断字符串长度 7)推断格式是否为Email格式 8)推断是否为两位小数 9)推断是否包括中文 10)推断是否包括字符串 11)推断是否为数字 12)推断是否为正整数 13)推断英文字符跟数字组合 14)IP格式推断

代码语言:javascript
复制
Ext.require(['*']);

	/***
	 * 日期校验
	 * @param {} num
	 * @return {}
	 */
	function testDate(newdate){
		 alert(newdate);
	    var startime=Ext.util.Format.date(newdate,'Y-m-d H:m:s');
	    var startDateTemp = startime.split(" ");
	    reg=/^([1-2]\d{3})[\/|\-](0?[1-9]|10|11|12)[\/|\-]([1-2]?[0-9]|0[1-9]|30|31)$/;		   if(!startDateTemp[0].match(reg)){			   Ext.Msg.alert("系统提示","请选择正确的日期格式如:2010-09-10!!");			   return false;		   }		   return true;	}	//推断正整数。字符串长度	function checkNumAndLen(abc,lenNum) 	{ 		//推断空		if(!checkNull(abc)) {			 //推断正整数			 var reg = /^[0-9]+[0-9]*]*$/;   //推断字符串是否为数字   /^[0-9]+.?[0-9]*$/ 			 if (!abc.match(reg)) 			 { 				return false; 			 }			return checkLenth(abc,lenNum);		}		return false;	}		//推断正整数,字符串长度	function checkNumAndNumLen(abc,lenNum) { 		//推断空		if(!checkNull(abc)) {			 //推断正整数			 var pattern = /^[0-9]+[0-9]*]*$/;   //推断字符串是否为数字   /^[0-9]+.?[0-9]*$/ 			 if (pattern.test(abc)){				if(abc.length <= lenNum){					return false; 				}else{					return true;				}			 }else{				 return true;			 }		}else{			return true;		}	}		//校验长度。和是否空	//校验成功返回true 失败false	function checkNullAndLength(abc,num) {		if(!checkNull(abc)) {			return checkLenth(abc,num);		}		return false;	}	//推断是否为空	function checkNull(abc) {		if(abc == null || abc.replace(/^\s\s*/, '' ).replace(/\s\s*$/, '' ).length == 0) {     	        return true; 		}		return false;	}		/**	 * 比較大小	 * @param from	 * @param to	 * @returns {Number}	 */	function compare(from,to){				if(from>to){			return 1;		}else if(from==to){			return 0;		}else if(from<to){			return -1;		}			}		//推断字符串长度		function checkLenth(abc,lenNum) {		if(lenNum == 0 || abc == null) {			return true;		}	 		 var l = 0; 		 var a = abc.split("");			 for (var i=0;i<a.length;i++) { 			 if (a[i].charCodeAt(0)<299) {				l++; 			 }			 else 			 {				l+=2; 			 } 		 } 		 if(l > lenNum) {			return false;		 }		 return true;		}		//电话号码	function checkPhone(strNumber)	{		var pattern = /^\d{0,20}$/;		if(strNumber==null||strNumber==""){			return true;		}else{			if(pattern.test(strNumber)){				return true;			}		}							return false;	}	//Email	function checkEmail(strEmail)	{		var	pattern	=	/^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+/;		if(pattern.test(strEmail)) 			return true;		return false;	}		//2位小数	function isDecimal(value){				if(value == null)					return false;									var v = value;									var pattern = /^[1-9]+\.\d{1,2}$/;				flag = pattern.test(v);								if(!flag){											//obj.value = obj.value + ".00";					//obj.select();					//obj.focus();					return false;				}else{					return true;				}	}		//是否包括中文	//true: 包括中文  false:不包括中文	function checkChinese(str){ 	    if (escape(str).indexOf("%u") != -1) { 	        return true; 	    } 	    else { 	        return false; 	    } 	} 		//是否包括特殊字符	function checkQuote(str){ 	    var items = new Array("~", "`", "!", "@", "#", "$", "%", "^", "&", "*", "{", "}", "[", "]", "(", ")","'"); 	    items.push(":", ";", "’", "|", "\\", "<", ">", "?", "/", "<<", ">>", "||", "//"); 	    items.push("admin", "administrators", "administrator"); 	    items.push("select", "delete", "update", "insert", "create", "drop", "alter", "trancate"); 	    str = str.toLowerCase(); 	    for (var i = 0; i < items.length; i++) { 	        if (str.indexOf(items[i]) >= 0) { 	            return true; 	        } 	    } 	    return false; 	} 		//是否是数字	function checkNum(str){     	var pattern = /^[0-9]*$/;    	if(pattern.test(str)){    		return false;    	}else{    		return true;    	}	} 	//是否是正整数	function checkPositiveNum(str){     	//推断空		if(!checkNull(str)) {			 //推断正整数			 var reg = /^[1-9]+[0-9]*]*$/;   //推断字符串是否为数字   /^[0-9]+.?[0-9]*$/ 			 if (str.match(reg)){				return false; 			 }else{				 return true;			 }		}		return true;	} 		/**	 * 推断文件格式是否正确	 * @param {Object} str	 * @return {TypeName} 	 */	function checkFile(str){	    //验证图片文件的正则  	    var img_reg = /\.([vV][mM]){1}$/;	    if(str.match(img_reg)){	    	return false;	    }else{	    	return true;	    }	} 		/**	 * 推断文件格式是否正确	 * @param {Object} str	 * @return {TypeName} 	 */	function checkFileExcel(str){	    //验证图片文件的正则  	    var img_reg = /\.([xX][lL][sS]){1}$/;	    if(str.match(img_reg)){	    	return false;	    }else{	    	return true;	    }	} 		//仅仅能是英文字符跟数字组合  function checkatandnumber(str,strlength){	  	  var qtype=/^[A-Za-z0-9]+$/;	  if(str.match(qtype)){		  if(!checkLenth(str,strlength)){			  return false;		  }else{			  return true;		  }		  	  }else{		  return false;	  }  }    /**   * IP格式推断   * @param {Object} str   * @param {Object} strlength   * @return {TypeName}    */  function checkIp(str){	  var pattern =  /^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/;	  if(pattern.test(str)){		  return false;	  }else{		  return true;	  }  }       

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/116568.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年1月1,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档