JS各种正则表达式整理合集
在日常编码中,我们经常需要用正则表达式来判断form表单中一些输入框的对错,为了方便使用,我把常用的各类表达式做了一个整理,如下:
验证手机号
手机号一般都是11位数字,并且以1开头,代码如下:
var reg = /^1[3|5|7|8][0-9]\d{4,8}$/
if(reg.test(value)){
return true
}else{
return false
}
验证电话号码
电话号码一般以区号+号码的形式,区号以0开头,3位或者4位,号码是7位或8位,中间以-连接,代码如下:
var reg = /^0\d{2,3}-?\d{7,8}$/
if(reg.test(value)){
return true
}else{
return false
}
验证IP地址
var reg = /^(\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(reg.test(value)){
return true
}else{
return false
}
验证端口号
端口号一般为数字1—65535,代码如下:
if(/^[1-9]\d*|0$/.test(value) && value*1>=0 && value*1<=65535){
return true
}else{
return false
}
验证邮箱
邮箱我们可以认为由两部分组成,第一部分@第二部分
第一部分:由字母、数字、下划线、-、.组成
第二部分:为一个域名,域名由字母、数字、短线-、域名后缀组成,域名后缀一般是2-4位
代码如下:
var reg = /^(\w-*\.*)+@(\w-?)+(\.\w{2,})+$/
if(reg.test(value)){
return true
}else{
return false
}
验证是否含特殊字符
var reg= new RegExp("[`~!@#^&*()=|{}':;',\\[\\]<>《》/?~!@#……&*()——|{}【】\"\\\\‘;:”“'。,. 、? ]");
if(reg.test(value)){
return true
}else{
return false
}
验证是否是数字
var reNum = /^\d*$/
if(reNum.test(value)){
return true
}else{
return false
}
验证是否包含中文
var reg = new RegExp("[\\u4E00-\\u9FFF]+","g")
if(reg.test(value)){
return true
}else{
return false
}
验证是否是纯英文
var reg = new RegExp("^[a-zA-Z]+$")
if(reg.test(value)){
return true
}else{
return false
}
验证QQ号码
QQ号码都是数字,不能为空,不能是小数,在5-13位之间,不能以0开头,代码如下:
var reg = /^[1-9][0-9]{4,14}$/
if(reg.test(value)){
return true
}else{
return false
}
验证身份证
var reg = /\d{15}|\d{18}/
if(reg.test(value)){
return true
}else{
return false
}
URL地址防SQL注入
var url2 = url.toLowerCase() //大写转换成小写
var query = url2.subString(url.indexOf("="+1))
var reg = /select|update|delete|turncate|join|exec|insert|drop|count|'|"|;|>|<|%/i
if(reg.test(value)){
return true
}else{
return false
}
文本框防SQL注入
var reg = /select|update|delete|exec|count|'|"|=|;|>|<|%/i
if(reg.test(value)){
return true
}else{
return false
}
先总结这么多,当然需要验证的远远不止这些,以上验证方法也不是唯一的,欢迎大家批评指正,也欢迎留言分享。