身份证验证

                                    身份证验证

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

开发工具与关键技术:Visual Studio 2015  C#

作者: 李杨

撰写时间:2019-06-25

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

身份证验证就要用到正则了。

二代身份证,身份证号就是十八位。一代身份证号码就是十五位,不过现在一代的身份已经基本没有用了。因为13年开始,我们国家就已经停止使用一代身份证了。

所以现在写代码的话,就只需要验证十八位的身份证就好了。

 

身份证号呢,它分为五部分,

例如:513023198808261786

 

前六位呢就是表示行政区划的代码。

第一第二位

表示的是所在的省或者直辖市、自治区的代码。

三四位呢

就是表示所在的地级市的代码。

五六位,

表示的是所在的县级的代码。

七到十四位:

表示的是你的出生年月日

十五到十六呢就是

,所在的地方的派出所的代码

第十七位

就是表示的性别。奇数就是男的(1、3、5、7、9)偶数就是女的(2、4、6、8、0).

然后最后就是第十八位

是校验位,存在是一个值:0、1、2、3、4、5、6、7、8、9、X,它的值是固定公式根据前面十七位算出来的。

 

所以前端JS代码验证省份证号只需要验证十八位就好了。

如图:

然后要调用的封装的方法去验证

先是声明一个变量:列出每个地区省的编号

然后后面就是验证十八位的身份证号,

我们先要测试出生日期的合法性

然后因为我们有平年和闰年。

所以出生的合法日期就要用两种来验证。

1: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]$/;

上面这一种正则验证日期呢就是闰年出生日期的合法性正则表达式

2: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]$/;

第二种呢就是平年的出生日期的合法性的正则验证

 

如图:(代码来源于老师)

 

 

 

大致的身份证验证就是这个样子了。

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值