js字符串常用判断方法
转自:http://blog.sina.com.cn/s/blog_6819fa800100j5t6.html
一、方法介绍
- function obj$(id) 根据id得到对象
- function val$(id) 根据id得到对象的值
- function trim(str) 删除左边和右边空格
- function ltrim(str) 删除左边空格
- function rtrim (str) 删除右边空格
- function isEmpty(str) 字串是否有值
- function equals(str1, str2) js判断比较两字符串是否相等
- function equalsIgnoreCase(str1, str2) js判断忽略大小写比较两个字符串是否相等
- function isChinese(str) js判断判断是否中文
- function isEmail(strEmail) js判断是否电子邮件
- function isImg(str) js判断是否是一个图片格式的文件jpg|jpeg|swf|gif
- function isInteger(str) js判断是否是一个整数
- function isFloat js判断是否是一个浮点数
- function isPost(str) js判断是否邮编(1位至6位
- function isMobile(str) js判断是否是手机号
- function isPhone(str) js判断是否是电话号码必须包含区号,可以含有分机号
- function isQQ(str) js判断是否合法的QQ号码
- function isIP(str) js判断是否是合法的IP
- function isDate(str) js判断是否日期类型(例:2005-12-12)
- function isIdCardNo(idNumber) js判断是否是合法的身份证号
二、方法具体
1 function obj$(id) 2 { 3 return document.getElementByIdx(id); 4 } 5 6 7 function val$(id) 8 { 9 var obj = document.getElementByIdx(id); 10 if(obj !== null) 11 { 12 return obj.value; 13 } 14 return null; 15 } 16 17 18 function trim(str) 19 { 20 return str.replace(/(^\s*)|(\s*$)/g, ''); 21 } 22 23 24 function ltrim(str) 25 { 26 return str.replace(/^\s*/g,''); 27 } 28 29 30 function rtrim(str) 31 { 32 return str.replace(/\s*$/,''); 33 } 34 35 36 function isEmpty(str) 37 { 38 if(str != null && str.length > 0) 39 { 40 return true; 41 } 42 return false; 43 } 44 45 46 function equals(str1, str2) 47 { 48 if(str1 == str2) 49 { 50 return true; 51 } 52 return false; 53 } 54 55 56 function equalsIgnoreCase(str1, str2) 57 { 58 if(str1.toUpperCase() == str2.toUpperCase()) 59 { 60 return true; 61 } 62 return false; 63 } 64 65 66 function isChinese(str) 67 { 68 var str = str.replace(/(^\s*)|(\s*$)/g,''); 69 if (!(/^[\u4E00-\uFA29]*$/.test(str) 70 && (!/^[\uE7C7-\uE7F3]*$/.test(str)))) 71 { 72 return false; 73 } 74 return true; 75 } 76 77 78 function isEmail(str) 79 { 80 if(/^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/.test(str)) 81 { 82 return true 83 } 84 return false; 85 } 86 87 88 function isImg(str) 89 { 90 var objReg = new RegExp("[.]+(jpg|jpeg|swf|gif)$", "gi"); 91 if(objReg.test(str)) 92 { 93 return true; 94 } 95 return false; 96 } 97 98 99 function isInteger(str) 100 { 101 if(/^-?\d+$/.test(str)) 102 { 103 return true; 104 } 105 return false; 106 } 107 108 109 function isFloat(str) 110 { 111 if(/^(-?\d+)(\.\d+)?$/.test(str) 112 { 113 return true; 114 } 115 return false; 116 } 117 118 119 function isPost(str) 120 { 121 if(/^\d{1,6}$/.test(str)) 122 { 123 return true; 124 } 125 return false; 126 } 127 128 129 function isMobile(str) 130 { 131 if(/^1[35]\d{9}/.test(str)) 132 { 133 return true; 134 } 135 return false; 136 } 137 138 139 function isPhone(str) 140 { 141 if(/^(0[1-9]\d{1,2}-)\d{7,8}(-\d{1,8})?/.test(str)) 142 { 143 return true; 144 } 145 return false; 146 } 147 148 149 function isQQ(str){ 150 if(/^\d{5,9}$/.test(str)) 151 { 152 return true; 153 } 154 return false; 155 } 156 157 158 function isIP(str){ 159 var reg = /^(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])$/; 160 if(.test(str)) 161 { 162 return true; 163 } 164 return false; 165 } 166 167 168 function isDate(str) 169 { 170 var reg = /^((((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-))$/; 171 if(reg.test(str)) 172 { 173 return true; 174 } 175 return false; 176 } 177 178 179 function isIdCardNo(idNumber) 180 { 181 var factorArr = new Array(7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,1); 182 var varArray = new Array(); 183 var lngProduct = 0; 184 var intCheckDigit; 185 var idNumber.length = ; 186 187 if ((idNumber.length != 15) && (idNumber.length != 18)) 188 { 189 return false; 190 } 191 for(i=0;i<idNumber.length;i++) 192 { 193 varArray[i] = idNumber.charAt(i); 194 if ((varArray[i] < '0' || varArray[i] > '9') && (i != 17)) 195 { 196 return false; 197 } 198 else if (i < 17) 199 { 200 varArray[i] = varArray[i]*factorArr[i]; 201 } 202 } 203 if (idNumber.length == 18) 204 { 205 var date8 = idNumber.substring(6,14); 206 if (checkDate(date8) == false) 207 { 208 return false; 209 } 210 for(i=0;i<17;i++) 211 { 212 lngProduct = lngProduct + varArray[i]; 213 } 214 intCheckDigit = 12 - lngProduct % 11; 215 switch (intCheckDigit) 216 { 217 case 10: 218 intCheckDigit = 'X'; 219 break; 220 case 11: 221 intCheckDigit = 0; 222 break; 223 case 12: 224 intCheckDigit = 1; 225 break; 226 } 227 if (varArray[17].toUpperCase() != intCheckDigit) 228 { 229 return false; 230 } 231 } 232 else 233 { 234 var date6 = idNumber.substring(6,12); 235 if (checkDate(date6) == false) 236 { 237 return false; 238 } 239 } 240 return true; 241 }
作者:null-npe 出处:https://www.cnblogs.com/npe 由于作者个人水平有限,如果文中有什么错误,欢迎指出。以免更多的人被误导。 |