首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

校验身份证号

之前在做项目的时候遇到了需要校验身份证号码,最初始的想法就是校验一下是否数字还有就是校验长度,后来想到有的身份证号的最末尾数字是X,于是又加入了一层判断末尾数为X的判断。...写好以后总是感觉不对劲,因为之前写校验手机号的就能校验一下大致的真伪,但是现在写的身份证校验根本就算不上是校验。...于是就在网上搜了一下,发现身份证号码是有规律和算法的,下面来看一下 根据〖中华人民共和国国家标准 GB 11643-1999〗中有关公民身份号码的规定,公民身份号码是特征组合码,由十七位数字本体码和一位数字校验码组成... 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 Wi 7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2 1 有了上面的算法就产生了如何利用js...来校验身份证号码的算法了,下面请看代码 function isIdCard(cardid) { //身份证正则表达式(18位) var isIdCard2 = /^[1-

2.5K32

身份证号校验规则

第十八位表示校验码。作为尾号的校验码,是由号码编制单位按统一的公式计算出来的,校验码如果出现数字10,就用X来代替,详情参考下方计算方法。 其中第一代身份证号码为15位。...年份两位数字表示,没有校验码。...前六位详情请参考省市县地区代码 X是罗马字符表示数字10,罗马字符(1-12):Ⅰ、Ⅱ、Ⅲ、Ⅳ、Ⅴ、Ⅵ、Ⅶ、Ⅷ、Ⅸ、Ⅹ、Ⅺ、Ⅻ……,详情请参考罗马字符 中国居民身份证校验码算法 步骤如下: 将身份证号码前面的...通过上面计算得知如果余数是3,第18位的校验码就是9。如果余数是2那么对应的校验码就是X,X实际是罗马数字10。...所以,可以判定这是一个正确的身份证号码。 未经允许不得转载:肥猫博客 » 身份证号校验规则

2K20
您找到你想要的搜索结果了吗?
是的
没有找到

身份证号内容及校验方法

校验身份证号码是否合法,那么首先应该知道身份证号码是如何得出的。 身份证号 区位代码6位+出生日期8位+随机码3位(男性奇数,女性偶数)+校验码1位,共计18位。...校验码计算方法 ①身份证号码所在位: 序号 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 代号 a b c d e f g h i j k l m n o p q...8e + 4f + 2g + 1h + 6i + 3j + 7k + 9l + 10m + 5n + 8o + 4p + 2q ④除以11的余数: 余数 0 1 2 3 4 5 6 7 8 9 10 校验码...1 0 X 9 8 7 6 5 4 3 2 有效性验证 信息校验 检查生日信息是否是合法的日期,合法日期必须为当前时间之前的日期含当天 区位码校验 查询区位码是否在区位码表中,如果没有,则可能是历史编码或者无效编码...校验位检查 根据以上计算规则,计算校验位并与实际信息对比,只有相同才是有效的号码。

88120

身份证号校验算法

1、数字含义 中国大陆第二代身份证号码由18位数据或字母组成,每位数据都有特定的含义,结果如下: 每组数字都有不同的含义: 第1至2位数字代表所在省(直辖市、自治区)的代码; 第3至4位数字代表所在地级市...也就是说身份证号码不是随便产生的,它是用来检验身份的正确性。在没有全国个人身份证信息库时。可以通过检验码来校验身份证的正确性。...校验码由0-9的数据和字母X组成,其实X表示10(这并不是英文字母X,而是希腊数字10的缩写)。是由号码编制单位按统一的计算公式计算出来的,校验身份证号码正确性也是通过这个公式实现。...计算出S后再用S对11取余,根据余数确定校验位数字,对照表如下: 比如例子中的身份证号计算出来的S为189,对11取余结果为2,查表2对应的校验码为X,所以该身份证号最后一位应该为X。...: %s 校验通过" % num_str) else: print(u"身份证号: %s 校验不通过, 正确尾号应该为:%s" % (num_str

2.9K90

用Python写一个身份证号校验系统

这是一个用Python开发的GUI实战项目:居民身份证信息校验系统 一、总体介绍 本项目使用Tkinter作为GUI模块,充分利用Python面向对象的思想,开发一款实现身份证号校验的应用程序。...以上,如果我们输入一个正确的身份证号码,系统可以正常解析;但是篡改其中一位的话,校验结果直接显示无效;如果少输入一位的话,系统会提示“请输入18位”。 二、认识身份证号身份证号码的构成如下: ?...检查校验码 (1) 对身份证号码进行切片 首先我们把获取到的身份证号码分成地区码、生日码、顺序码、校验码,四个部分,存储在列表id_list[]中。...身份证号码输入位数不足的情况 情况二:最后一位校验位错误(本来是7我们故意输入8) ? 身份证号码最后一位故意输错的情况 情况三:输入正确的身份证号码的情况 ?...输入正确的身份证号码的情况 最后 本项目利用Tkinter开发了一个身份证号校验系统,能够识别用户输入的身份证号码的有效性,并且解析身份证号码的地区、出生日期、性别等有效信息,感兴趣的小伙伴可以直接后台私信

2.7K50

iOS 银行卡号有效性校验Luhn算法 (银行卡号码校验算法) & 身份证校验:【校验年龄、校验是否符合身份证号生成规则】

1、银行卡号有效性问题Luhn算法 2.1、定义工具类 IdentityCardTool 2.1.1 身份证号判断 2.1.2 根据身份证获取生日 2.1.3 从生日上获取年龄 2.1.4 判断是否小于...18岁 2.2、用法举例 前言 应用场景: 1、提款卡的卡号校验 兼容对公账户录入场景: 结算账户类型是对公的时候,不验证卡号规则。...当然你也可以借助第三方进行校验,比如https://ccdcapi.alipay.com/validateAndCacheCardInfo.json?..._input_charset=utf-8&cardNo 2、进件风险控制强化: 通过身份证号码提取法人出生年月日,与当前日进行比较,如<18周岁, 则提示“法人未满18周岁,禁止进件!”...如果此卡要有效,那么,结果必须是10的倍数 应用场景:提款卡的卡号校验 ? 用法 if(!

2.4K20

PHP校验15位和18位身份证号的类封装

新公司框架源码的时候,发现了这个功能,于是搜索一番并封装了一下身份证号校验的类。 目前大家的身份证号大多是 18 位的,当然,也不排除有些老人的身份证号是 15 位的。...如果强制要求是 18 位的话,会比较好,因为 15 位的身份证号没有校验码,可以说,只要了解大概结构,随手都可以造出一系列身份证号码来。...当然,如果只是单纯的程序校验, 18 位的身份证号码也可以伪造,就是需要伪造者花点心思。 最好的还是调用相关部门给的接口,进行校验。...本文所编写的身份证号校验,只是针对相关规则下的计算,是调用接口前能做的事情。...校验类的实现 通过分析身份证号的规则,了解到,有几点是可以做的: 检查身份是否正确(一般不会变化,而且省份不多) 检查地级市和县级市(如果有这方面的资源,可以考虑,不过一般不建议) 检查年月日 检查校验

1.1K41

js正则表达式校验金额-js正则表达式简单校验方法

下面就js正则表达式的校验带来内容分享,同时要考虑在js中支持的类型。   ...1.常见js正则校验   (1)校验密码强度   密码的强度必须是包含大小写字母和数字的组合,不能使用特殊字符,长度在8-10之间。   ^(?=.d)(?=.[a-z])(?=....[a-z]{2,4}){1,3}$/; return reg.test(str);}   到此这篇关于js正则表达式简单校验方法的文章就介绍到这了,更多相关js正则表达式校验内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持...js 正则表达式校验?   <   js验证密码的正则表达式。   完整的js正则表达式:   //强:字母+数字+特殊字符^(?![a-zA-z]+$)(?!\d+$)(?![!...@#$%^&*]+$ //中:字母+数字js正则表达式校验金额js正则表达式校验金额,字母+特殊字符,数字+特殊字符   ^(?![a-zA-z]+$)(?!\d+$)(?![!

8.9K20
领券