Javascript常用字符串判断函数代码分享
具体的解释查看注释吧,这里就不多废话了,直接上代码:
/* functionobj$(id) 根据id得到对象 functionval$(id) 根据id得到对象的值 functiontrim(str) 删除左边和右边空格 functionltrim(str) 删除左边空格 functionrtrim(str) 删除右边空格 functionisEmpty(str) 字串是否有值 functionequals(str1,str2) js判断比较两字符串是否相等 functionequalsIgnoreCase(str1,str2) js判断忽略大小写比较两个字符串是否相等 functionisChinese(str) js判断判断是否中文 functionisEmail(strEmail) js判断是否电子邮件 functionisImg(str) js判断是否是一个图片格式的文件jpg|jpeg|swf|gif functionisInteger(str) js判断是否是一个整数 functionisFloat js判断是否是一个浮点数 functionisPost(str) js判断是否邮编(1位至6位 functionisMobile(str) js判断是否是手机号 functionisPhone(str) js判断是否是电话号码必须包含区号,可以含有分机号 functionisQQ(str) js判断是否合法的QQ号码 functionisIP(str) js判断是否是合法的IP functionisDate(str) js判断是否日期类型(例:2005-12-12) functionisIdCardNo(idNumber) js判断是否是合法的身份证号 */ functionobj$(id) { returndocument.getElementById(id); } functionval$(id) { varobj=document.getElementById(id); if(obj!==null) { returnobj.value; } returnnull; } functiontrim(str) { returnstr.replace(/(^\s*)|(\s*$)/g,''); } functionltrim(str) { returnstr.replace(/^\s*/g,''); } functionrtrim(str) { returnstr.replace(/\s*$/,''); } functionisEmpty(str) { if(str!=null&&str.length>0) { returntrue; } returnfalse; } functionequals(str1,str2) { if(str1==str2) { returntrue; } returnfalse; } functionequalsIgnoreCase(str1,str2) { if(str1.toUpperCase()==str2.toUpperCase()) { returntrue; } returnfalse; } functionisChinese(str) { varstr=str.replace(/(^\s*)|(\s*$)/g,''); if(!(/^[\u4E00-\uFA29]*$/.test(str) &&(!/^[\uE7C7-\uE7F3]*$/.test(str)))) { returnfalse; } returntrue; } functionisEmail(str) { if(/^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/.test(str)) { returntrue } returnfalse; } functionisImg(str) { varobjReg=newRegExp("[.]+(jpg|jpeg|swf|gif)$","gi"); if(objReg.test(str)) { returntrue; } returnfalse; } functionisInteger(str) { if(/^-?\d+$/.test(str)) { returntrue; } returnfalse; } functionisFloat(str) { if(/^(-?\d+)(\.\d+)?$/.test(str) { returntrue; } returnfalse; } functionisPost(str) { if(/^\d{1,6}$/.test(str)) { returntrue; } returnfalse; } functionisMobile(str) { if(/^1[35]\d{9}/.test(str)) { returntrue; } returnfalse; } functionisPhone(str) { if(/^(0[1-9]\d{1,2}-)\d{7,8}(-\d{1,8})?/.test(str)) { returntrue; } returnfalse; } functionisQQ(str){ if(/^\d{5,9}$/.test(str)) { returntrue; } returnfalse; } functionisIP(str){ varreg=/^(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9])$/; if(.test(str)) { returntrue; } returnfalse; } functionisDate(str) { varreg=/^((((1[6-9]|[2-9]\d)\d{2})-(0?[13578]|1[02])-(0?[1-9]|[12]\d|3[01]))|(((1[6-9]|[2-9]\d)\d{2})-(0?[13456789]|1[012])-(0?[1-9]|[12]\d|30))|(((1[6-9]|[2-9]\d)\d{2})-0?2-(0?[1-9]|1\d|2[0-8]))|(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29-))$/; if(reg.test(str)) { returntrue; } returnfalse; } functionisIdCardNo(idNumber) { varfactorArr=newArray(7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,1); varvarArray=newArray(); varlngProduct=0; varintCheckDigit; varidNumber.length=; if((idNumber.length!=15)&&(idNumber.length!=18)) { returnfalse; } for(i=0;i<idNumber.length;i++) { varArray[i]=idNumber.charAt(i); if((varArray[i]<'0'||varArray[i]>'9')&&(i!=17)) { returnfalse; } elseif(i<17) { varArray[i]=varArray[i]*factorArr[i]; } } if(idNumber.length==18) { vardate8=idNumber.substring(6,14); if(checkDate(date8)==false) { returnfalse; } for(i=0;i<17;i++) { lngProduct=lngProduct+varArray[i]; } intCheckDigit=12-lngProduct%11; switch(intCheckDigit) { case10: intCheckDigit='X'; break; case11: intCheckDigit=0; break; case12: intCheckDigit=1; break; } if(varArray[17].toUpperCase()!=intCheckDigit) { returnfalse; } } else { vardate6=idNumber.substring(6,12); if(checkDate(date6)==false) { returnfalse; } } returntrue; }
常见的字符串判断的函数基本上都涵盖在内了,小伙伴们根据自己的项目需求自由选择吧,如有遗漏的,还请给我留言,本文持续更新。