在数据挖掘中会遇到相同长度数字字串的类型区分问题,个人认为最好的解决方案就是了解各个类型数据的构词方法,从而对不同、甚至相同长度的数据进行解构区分。对于身份证而言,采用第十八位的校验码进行校验计算能够有效的达到区分效果。
1 首先说明一下中国身份证的组成结构。
1.1 第二代身份证(18位)和第一代身份证(15位)的构成
身份证构成 | ||
18位身份证 | 身份证内容 | 15位身份证 |
1-2位 | 省、自治区、直辖市代码 | 1-2位 |
3-4位 | 地级市、盟、自治州代码 | 3-4位 |
5-6位 | 县、县级市、区代码 | 5-6位 |
7-14位 | 出生日期 | 7-12位 |
15-17位 | 顺序号 | 13-15位 |
18位 | 校验位 | null |
1.2 第二代身份证与第一代身份证变化的几个地方
(1)出生日期
第二代身份证的出生日期由第一代身份证的XX/XX/XX的6位修改成XXXX/XX/XX的8位。