正则表达式是我们验证时经常用到的方法,今天共享一个身份证号正则表达式详细验证代码包括尾数X
[Objective-C] 纯文本查看 复制代码 身份证验证18位和15位
18位验证
^[1-9]\d{5}[1-9]9\d{4}3[0-1]\d{4}$
|^[1-9]\d{5}[1-9]9\d{4}[0-2][0-9]\d{4}$|
^[1-9]\d{5}[1-9]9\d{4}3[0-1]\d{3}X%
|^[1-9]\d{5}[1-9]9\d{4}[0-2][0-9]\d{3}X$
15位验证
^[1-9]\d{5}\d{4}3[0-1]\d{4}$|^[1-9]\d{5}\d{4}[0-2][0-9]\d{4}$|^[1-9]\d{5}\d{4}3[0-1]\d{3}X$|^[1-9]\d{5}\d{4}[0-2][0-9]\d{3}X$
详细的验证方法
^XX\d{4}[1-9]9\d{4}[0-3][0-1]\d{4}$|^XX\d{4}[1-9]9\d{4}[0-2][0-9]\d{4}$|^XX\d{4}[1-9]9\d{4}[0-3][0-1]\d{3}X$|^XX\d{4}[1-9]9\d{4}[0-2][0-9]\d{3}X$
^XX\d{4}\d{4}[0-3][0-1]\d{4}$|^XX\d{4}\d{4}[0-2][0-9]\d{4}$|^XX\d{4}\d{4}[0-3][0-1]\d{3}X$|^XX\d{4}\d{4}[0-2][0-9]\d{3}X$
注:把XX换成省市地区国家代码就可以了。
北京 11 吉林 22 福建 35 广东 44 云南 53
天津 12 黑龙江 23 江西 36 广西 45 西藏 54
河北 13 上海 31 山东 37 海南 46 陕西 61
山西 14 江苏 32 河南 41 重庆 50 甘肃 62
内蒙古15 浙江33 湖北 42 四川 51青海 63
辽宁 21 安徽 34 湖南 43 贵州 52 宁夏 64
新疆 65 台湾 71 香港 81 澳门 82 国外 91
18位和15位混合验证
^[1-9]\d{5}[1-9]9\d{4}3[0-1]\d{4}$|^[1-9]\d{5}[1-9]9\d{4}[0-2][0-9]\d{4}$|^[1-9]\d{5}[1-9]9\d{4}3[0-1]\d{3}X$|^[1-9]\d{5}[1-9]9\d{4}[0-2][0-9]\d{3}X$|^[1-9]\d{5}\d{4}3[0-1]\d{4}$|^[1-9]\d{5}\d{4}[0-2][0-9]\d{4}$|^[1-9]\d{5}\d{4}3[0-1]\d{3}X$|^[1-9]\d{5}\d{4}[0-2][0-9]\d{3}X$
|