时间:2021-05-22
identity-card
验证身份证号码的正确性,不能仅仅通过正则表达式来验证,我们都知道我国的身份证一共是18位,由十七位数字本体码和一位校验码组成。
其排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位校验码。
校验码计算步骤
十七位数字本体码加权求和公式
S = Sum(Ai * Wi), i = 0, … , 16 ,先对前17位数字的权求和
Ai:表示第i位置上的身份证号码数字值(0~9)
Wi:7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2 (表示第i位置上的加权因子)
计算模
Y = mod(S, 11)
根据模,查找得到对应的校验码
Y: 0 1 2 3 4 5 6 7 8 9 10
校验码: 1 0 X 9 8 7 6 5 4 3 2
对应的代码校验如下:
Java
python
def get_id_card_verify_number(id_card): factor = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2] check_code_list = [1, 0, 'X', 9, 8, 7, 6, 5, 4, 3, 2] check_sum = sum([a * b for a, b in zip(factor, [int(a) for a in id_card[0:-1]])]) return check_code_list[check_sum % 11]总体代码(代码地址:https://github.com/lucas234/identity-card ):
以上所述是小编给大家介绍的python验证身份证信息的方法详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
这段C#代码主要是验证身份证的开头和身份证的格式和长度是否正确,没有按照身份证的编码规则进行严格验证//////验证身份证是否合法//////要验证的身份证pu
本文实例讲述了jQuery使用正则验证15/18身份证的方法。分享给大家供大家参考,具体如下:最好的jQuery正则验证身份证代码:按照身份证的算法定制而成,精
本文实例讲述了JS实现的验证身份证及获取地区功能。分享给大家供大家参考,具体如下:这里的代码可以用来验证身份证号,并且根据身份证号来判断是哪个省份及性别代码示例
本文实例讲述了C#实现验证身份证是否合法的方法。分享给大家供大家参考。具体分析如下:这段C#代码主要是验证身份证的开头和身份证的格式和长度是否正确,没有按照身份
大家都了解淘宝网有身份证信息验证的阶段,但是,有的人不清楚身份证信息验证的流程是啥?那麼,下面,大家就而言下,有关身份证信息验证的內容,想要知道的小伙伴们就可以