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]$/