正则表达式是用于匹配字符串中字符组合的模式。在 JavaScript中,正则表达式也是对象。这些模式被用于 RegExp 的 exec 和 test 方法, 以及 String 的 match、replace、search 和 split 方法。本章介绍 JavaScript正则表达式。
1、验证帐号是否合法
验证规则:字母、数字、下划线组成,字母开头,4-16位。
function checkUser(str){
var re = /^[a-zA-z]\w{3,15}$/;
if(re.test(str)){
alert("正确");
}else{
alert("错误");
}
}
checkUser("neirong.org");//调用
2、手机号码
验证规则:11位数字,以1开头。
function checkMobile(str) {
var re = /^1\d{10}$/
if (re.test(str)){
alert("正确");
}else{
alert("错误");
}
}
checkMobile('13800138000'); //调用
3、电话号码
验证规则:区号+号码,区号以0开头,3位或4位,号码由7位或8位数字组成,区号与号码之间可以无连接符,也可以“-”连接
function checkPhone(str){
var re = /^0\d{2,3}-?\d{7,8}$/;
if(re.test(str)){
alert("正确");
}else{
alert("错误");
}
}
checkPhone("09557777777");//调用
4、邮箱
验证规则:姑且把邮箱地址分成“第一部分@第二部分”这样。第一部分:由字母、数字、下划线、短线“-”、点号“.”组成;第二部分:为一个域名,域名由字母、数字、短线“-”、域名后缀组成,而域名后缀一般为.xxx或.xxx.xx,一区的域名后缀一般为2-4位,如cn、com、net,现在域名有的也会大于4位
function checkEmail(str){
var re = /^(\w-*\.*)+@(\w-?)+(\.\w{2,})+$/
if(re.test(str)){
alert("正确");
}else{
alert("错误");
}
}
checkEmail("contact@cnblogs.com");//调用
附上常用的正则
//手机号
/^1((3[\d])|(4[5,6,9])|(5[0-3,5-9])|(6[5-7])|(7[0-8])|(8[1-3,5-8])|(9[1,8,9]))\d{8}$/
//大写字母
/^[A-Z]+$/
//日期,如: 2000-01-01
/^\d{4}(-)\d{1,2}\1\d{1,2}$/
//email地址
/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/
//国内座机电话,如: 0341-86091234
/\d{3}-\d{8}|\d{4}-\d{7}/
//身份证号(15位、18位数字),最后一位是校验位,可能为数字或字符X
/(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/
//帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线组合
/^[a-zA-Z][a-zA-Z0-9_]{4,15}$/
//只包含中文
/^[\u4E00-\u9FA5]/
//是否小数
/^\d+\.\d+$/
//是否电话格式(手机和座机)
/^((0\d{2,3}-\d{7,8})|(1[345789]\d{9}))$/
//是否8位纯数字
/^[0-9]{8}$/
//是否html标签
/<(.*)>.*<\/\1>|<(.*) \/>/
//是否qq号格式正确
/^[1-9]*[1-9][0-9]*$/
//是否由数字和字母组成
/^[A-Za-z0-9]+$/
//是否小写字母组成
/^[a-z]+$/
//密码强度正则,最少6位,包括至少1个大写字母,1个小写字母,1个数字,1个特殊字符
/^.*(?=.{6,})(?=.*\d)(?=.*[A-Z])(?=.*[a-z])(?=.*[!@#$%^&*? ]).*$/
//用户名正则,4到16位(字母,数字,下划线,减号)
/^[a-zA-Z0-9_-]{4,16}$/
//16进制颜色
/^#?([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$/
//微信号,6至20位,以字母开头,字母,数字,减号,下划线
/^[a-zA-Z]([-_a-zA-Z0-9]{5,19})+$/
//中国邮政编码
/^(0[1-7]|1[0-356]|2[0-7]|3[0-6]|4[0-7]|5[1-7]|6[1-7]|7[0-5]|8[013-6])\d{4}$/
//只包含中文和数字
/^(([\u4E00-\u9FA5])|(\d))+$/
//非字母
/[^A-Za-z]/