您的位置:首页 > Web前端 > JavaScript

js验证 正则表达式 包含手机号码、座机号码、电子邮箱、密码、姓名、身份证号码等表单数据的验证

2012-09-27 15:09 1001 查看
一、手机号码验证(包含了13段号码、14段号码、15段号码和18段号码)

var reg = /^(13[0-9]|145|147|15[0-3]|15[5-9]|180|18[2-3]|18[6-9])[0-9]{8}$/;

if(!reg.test($mobilePhone)){

alert('手机号码输入有误!');

}else{

alert('手机号码输入正确!');

}

二、座机号码/固定电话验证(区号3位或4位,号码7位或8位,区号与电话号码之间用小括号或“-”隔开)

1、

var reg = /^(\([0-9]{3,4}\)|[0-9]{3,4}\-)[0-9]{7,8}$/;

if(!reg.test($telePhone)){

alert('电话号码输入有误!');

}else{

alert('电话号码输入正确!');

}

匹配类型为:

123-1234567,123-12345678,1234-1234567,1234-12345678,

(123)1234567,(123)12345678,(1234)1234567,(1234)12345678。

2、

var reg = /^(\([0-9]{3,4}\)|[0-9]{3,4}\-)?[0-9]{7,8}$/;

if(!reg.test($telePhone)){

alert('电话号码输入有误!');

}else{

alert('电话号码输入正确!');

}

第二种写法的匹配类型除了第一种写法的匹配类型外,多了两种匹配类型,即不带区号的电话号码,如:1234567,12345678。

当然,这两种验证电话号码的公式也可以写为:

var reg = /^(\(\d{3,4}\)|\d{3,4}\-)\d{7,8}$/; 和
var reg = /^(\(\d{3,4}\)|\d{3,4}\-)?\d{7,8}$/;

三、电子邮箱验证(包含“@”和“.”)

var reg = /(\S)+[@]{1}(\S)+[.]{1}(\w)+/;

if(!reg.test($email)){

alert('邮箱格式不正确!');

}else{

alert('正确的电子邮箱!');

}

四、密码验证()

五、用户名验证(邮箱/手机号/自定义用户名[自定义用户名只能由中文、英文、数字及“_”、“-”组成,且长度为4~20])

var str_email = "^\\w+((-\\w+)|(\\.\\w+))*\\@[A-Za-z0-9]+((\\.|-)[A-Za-z0-9]+)*\\.[A-Za-z0-9]+$"; //邮箱正则表达式

var str_mobile = "^0?(13|15|18|14)[0-9]{9}$"; //手机号码正则表达式

var str_num = "^[0-9]+$"; //纯数字正则表达式

var str_name = "[A-Za-z0-9_\\-\\u4e00-\\u9fa5]+$"; //自定义用户名正则表达式

if(regName == ''){

alert('请输入用户名!');

}else{

if(regName.indexOf("@") > -1){

if(!new RegExp(str_email).test(regName)){

alert('邮箱地址不正确,请重新输入');

}

}else{

if(regName.length < 4 || regName.length > 20){

alert( '用户名长度只能在4-20位字符之间');

}else if(!new RegExp(str_name).test(regName)){

alert('用户名只能由中文、英文、数字及“_”、“-”组成');

}else if(new RegExp(str_num).test(regName) && !new RegExp(str_mobile).test(regName)){

alert('用户名不能是纯数字,请确认输入的是手机号或者重新输入');

}

}

}

待续……

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐