18 位身份证号码各位的含义:
1-2: 省、自治区、直辖市代码;
3-4: 地级市、盟、自治州代码;
5-6: 位县、县级市、区代码;
7-14: 出生年月日,比如 19670401
代表 1967年4月1日
;
15-17: 为顺序号,其中 17 位(倒数第二位)男为单数,女为双数;
18: 为校验码,0-9 和 X。作为尾号的校验码,是由把前十七位数字带入统一的公式计算出来的,计算的结果是 0-10,如果某人的尾号是 0-9,都不会出现 X,但如果尾号是 10,那么就得用 X 来代替,因为如果用 10 做尾号,那么此人的身份证就变成了 19 位。X 是罗马数字的 10,用 X 来代替 10。
1头6位 [1-9]\d{5}
2出生年份 (19|20)\d{2}
3出生月日
4 31天 (0[13578]|1[02])(0[1-9]|[12][\d]|3[01])
5 30天 (0[469]|11)(0[1-9]|[12][\d]|30)
6 2月 02(0[1-9]|[12][\d])
7后4位 \d{3}[\dxX]
8
9/^[1-9]\d{5}(19|20)\d{2}((0[13578]|1[02])(0[1-9]|[12][\d]|3[01])|(0[469]|11)(0[1-9]|[12][\d]|30)|02(0[1-9]|[12][\d]))\d{3}[\dxX]$/