- 浏览: 40846 次
- 性别:
- 来自: 上海
最新评论
JS 正则表达式各种验证
- 博客分类:
- 技术杂绘
判断手机的:
/^13\d{9}$/
/^15\d{9}$/
判断座机的:
^(([0\+]\d{2,3}-)?(0\d{2,3})-)?(\d{7,8})(-(\d{3,}) )?$/
function checkPhone(contactNumber){
//contactNumber为表单中代表电话号码的元素
if(!(/^13\d{9}$/g.test(contactNumber)||(/^15\d{9}$ /g.test(contactNumber))||(/^(([0\+]\d{2,3}-)?(0\d{2 ,3})-)?(\d{7,8})(-(\d{3,}))?$/g.test(contactNumber) )))
alert("联系方式不正确,如果是固定电话,区号和电话号码之间请用-分割");
}
手机号码的验证(13开头和158,159开头,共11位)
var re;
var ss=document.getElementById('textbox3').value;
re= /^(13[0-9]{9})|(15[89][0-9]{8})$/
if(re.test(ss))
{
document.getElementById('label3').innerText=""; //给label赋值用innerText
}
else
{
document.getElementById('label3').innerText="请输入正确的手机号码!";
document.getElementById('imagebutton1').disabled=t rue; //禁用Button用disabled
}
邮件地址的验证(包含@和.)
var re;
var ss=document.getElementById(textboxid).value;
re= /\w@\w*\.\w/
if(re.test(ss))
document.getElementById('label4').innerText="";
else
{
document.getElementById('label4').innerText="请输入正确的邮件地址!";
document.getElementById('imagebutton1').disabled=t rue;
}
邮政编码的验证(开头不能为0,共6位)
var ss=document.getElementById('TextBox4').value;
var re= /^[1-9][0-9]{5}$/
if(re.test(ss))
document.getElementById('label5').innerText="";
else
{
document.getElementById('label5').innerText="邮政编码格式不正确!";
}
var r= /^13[012345789]{9}/ 以13开头的11位数,后9位不能出现数字6
function checkIdcard(idcard){
var Errors=new Array(
"验证通过!",
"身份证号码位数不对!",
"身份证号码出生日期超出范围或含有非法字符!",
"身份证号码校验错误!",
"身份证地区非法!"
);
var area={11:"北京",12:"天津",13:"河北",14:"山西",15:"内蒙古",21:"辽宁",22:"吉林",23:"黑龙江",31:"上海",32:"江苏",33:"浙江",34:"安徽",35:"福建",36:"江西",37:"山东",41:"河南",42:"湖北",43:"湖南",44:"广东",45:"广西",46:"海南",50:"重庆",51:"四川",52:"贵州",53:"云南",54:"西藏",61:"陕西",62:"甘肃",63:"青海",64:"宁夏",65:"新疆",71:"台湾",81:"香港",82:"澳门",91:"国外"}
var idcard,Y,JYM;
var S,M;
var idcard_array = new Array();
idcard_array = idcard.split("");
//地区检验
if(area[parseInt(idcard.substr(0,2))]==null) return Errors[4];
//身份号码位数及格式检验
switch(idcard.length){
case 15:
if ( (parseInt(idcard.substr(6,2))+1900) % 4 == 0 || ((parseInt(idcard.substr(6,2))+1900) % 100 == 0 && (parseInt(idcard.substr(6,2))+1900) % 4 == 0 )){
ereg=/^[1-9][0-9]{5}[0-9]{2}((01|03|05|07|08|10|12 )(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1 -2][0-9]|30)|02(0[1-9]|[1-2][0-9]))[0-9]{3}$/;//测试出生日期的合法性
} else {
ereg=/^[1-9][0-9]{5}[0-9]{2}((01|03|05|07|08|10|12 )(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1 -2][0-9]|30)|02(0[1-9]|1[0-9]|2[0-8]))[0-9]{3}$/;//测试出生日期的合法性
}
if(ereg.test(idcard)) return Errors[0];
else return Errors[2];
break;
case 18:
//18位身份号码检测
//出生日期的合法性检查
//闰年月日:((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1]) |(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2 ][0-9]))
//平年月日:((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1]) |(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|1[0- 9]|2[0-8]))
if ( parseInt(idcard.substr(6,4)) % 4 == 0 || (parseInt(idcard.substr(6,4)) % 100 == 0 && parseInt(idcard.substr(6,4))%4 == 0 )){
ereg=/^[1-9][0-9]{5}19[0-9]{2}((01|03|05|07|08|10| 12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]| [1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))[0-9]{3}[0-9Xx ]$/;//闰年出生日期的合法性正则表达式
} else {
ereg=/^[1-9][0-9]{5}19[0-9]{2}((01|03|05|07|08|10| 12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]| [1-2][0-9]|30)|02(0[1-9]|1[0-9]|2[0-8]))[0-9]{3}[0- 9Xx]$/;//平年出生日期的合法性正则表达式
}
if(ereg.test(idcard)){//测试出生日期的合法性
//计算校验位
S = (parseInt(idcard_array[0]) + parseInt(idcard_array[10])) * 7
+ (parseInt(idcard_array[1]) + parseInt(idcard_array[11])) * 9
+ (parseInt(idcard_array[2]) + parseInt(idcard_array[12])) * 10
+ (parseInt(idcard_array[3]) + parseInt(idcard_array[13])) * 5
+ (parseInt(idcard_array[4]) + parseInt(idcard_array[14])) * 8
+ (parseInt(idcard_array[5]) + parseInt(idcard_array[15])) * 4
+ (parseInt(idcard_array[6]) + parseInt(idcard_array[16])) * 2
+ parseInt(idcard_array[7]) * 1
+ parseInt(idcard_array[8]) * 6
+ parseInt(idcard_array[9]) * 3 ;
Y = S % 11;
M = "F";
JYM = "10X98765432";
M = JYM.substr(Y,1);//判断校验位
if(M == idcard_array[17]) return Errors[0]; //检测ID的校验位
else return Errors[3];
}
else return Errors[2];
break;
default:
return Errors[1];
break;
}
}
//alert(checkIdcard("220183198808081610"))
发表评论
-
SQL Server2005截取字符串并操作
2012-07-06 09:51 616以前看过别人写的,但是实在记不起来是怎么写的了,今天自己写 ... -
用正则表达式验证密码强度
2012-07-06 09:45 767项目中有个需要验证密码强度,我对正则表达式并不熟悉,每次都 ... -
shell脚本系列-正则表达式介绍
2012-07-06 09:37 661正则表达式介绍 随着对UNIX和LINUX熟悉程度的不 ... -
Symbian 更换主题
2012-07-06 09:30 701http://wiki.forum.nokia.com/i ... -
Android组件相关概念总结
2012-07-03 13:43 682Android 手机操作系 ... -
flex ant 例子
2012-07-02 10:31 508Flex Ant Task" def ... -
Flex之数据格式化
2012-07-02 10:31 626数据格式化是对某 ... -
flex 日期下拉框,选择一段日期
2012-07-02 10:31 610在一般网页的制作过程中,我们做的程序,日期选择框,通过js ... -
SWFAddress实现Flex深度链接(不同模块具有不同的URL)
2012-07-02 10:30 571众所周知,Flex明显区别于传统B/S开发模式的特性中,有 ... -
The architecture of Flex and Java applications two (Flex 和 Java 应用程序架构 2)
2012-07-01 00:09 575Flex and Java application ... -
Adobe Flex Application LifeCycle
2012-07-01 00:09 570Flex的根对象就是Sys ... -
Flex4中 一个使用Module的例子
2012-07-01 00:09 603使用Flex的Module技术, 将各个业务子模块分散成若 ... -
flex linkbutton 数据加载
2012-07-01 00:09 755类似于导航条的一种。 flex/spark& ... -
Flex加载flash_as3_swf,并响应其中的按钮事件
2012-07-01 00:09 776注:flash_as3_swf里的源码里有一个btn_fu ...
相关推荐
正则表达式 JS 身份证验证 正则表达式 JS 身份证验证 正则表达式 JS 身份证验证
jq非空验证,为空的时候input后面加红色字体的用户名不能为空。 js正则表达式验证邮箱和手机号码,验证邮箱必须含有@符,手机号码必须1开头并且固定11个字符
一个正则表达式验证格式的方法 你一个可以调用的demo valid(str,tostr) str:字符串 tostr:格式 yy-mm-dd 支持.,/,-三种格式。
JavaScript验证正则表达式大全.txtJavaScript验证正则表达式大全.txtJavaScript验证正则表达式大全.txtJavaScript验证正则表达式大全.txtJavaScript验证正则表达式大全.txtJavaScript验证正则表达式大全....
js正则表达式表单验证小案例
javascript正则表达式表单验证大全非常好用!
js正则表达式校验数字、email、身份证号等
JavaScript正则表达式验证身份证号码是否合法(两种方法)分析.docx
关于身份证号,出生日期等的js正则表达式验证 有几种方式
JS正则表达式验证 常用的大部分都有的JS正则表达式验证 常用的大部分都有的
该文件中统计的正则表达式包含以下内容(都是实际项目中使用的,经过测试): 1、大于等于0的值,允许输入两位小数(边界值:100.0,100.00等值都已包含在验证的里面); 2、大于3小于40的整数; 3、0到1之间的小数...
常用的JS的正则表达式进行验证。非常适合用户的使用
表单验证的正则表达式html与js表单验证的正则表达式html与js表单验证的正则表达式html与js
简单的正则表达式+js验证邮箱例子 新手必备 !
各种正则验证.正则表达式,多种的验证样式。。jsp
本文实例讲述了微信小程序实现简单input正则表达式验证功能。分享给大家供大家参考,具体如下: 1、效果展示 2、关键代码 index.wxml文件 <input placeholder="输入内容" bindinput="check"></input> ...
正则表达式时间验证,js和控件都通用的。
正则表达式可以: •测试字符串的某个模式。例如,可以对一个输入字符串进行测试,看在该字符串是否存在一个电话号码模式或一个信用卡号码模式。这称为数据有效性验证 •替换文本。可以在文档中使用一个正则表达式...
邮箱验证正则表达式 邮箱验证正则表达式 邮箱验证正则表达式
用于验证正则表达式是否正确,很久以前学习正则表达式时参照学习资料做的js版本,不过是繁体的,但不影响使用