js 身份证正则表达式
时间: 2023-12-25 08:29:39 浏览: 104
以下是一个用于匹配身份证号码的简易版正则表达式示例:
```javascript
var regex = /^[1-9]\d{5}(19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}[\dX]$/;
``该正则表达式可以用于验证18位身份证号码,其中:
- ^ 表示匹配字符串的开始位置
- [1-9] 表示第一位必须是非零数字
- \d{5} 表示接下来的5位数字可以是任意数字
- (19|20)\d{2} 表示年份码,可以是19开头或20开头的4位数字
- (0[1-9]|1[0-2]) 表示月份码,可以是01到12之间的2位数字
- (0[1-9]|[12]\d|3[01]) 表示日期码,可以是01到31之间的2位数字
- \d{3} 表示顺序码,可以是任意3位数字
- [\dX] 表示校验码,可以是任意数字或大写字母X
- $ 表示匹配字符串的结束位置
请注意,这只是一个简易版的身份证正则表达式,仅能满足基本的格式要求,并不能保证身份证号码的真实有效性。
相关问题
JavaScript身份证号正则表达式
身份证号的正则表达式是这样的:
/^[1-9]\d{5}(19|20)\d{2}(0[1-9]|1[012])(0[1-9]|[12][0-9]|3[01])\d{3}[0-9Xx]$/
其中,前面的^表示字符串的开头,后面的$表示字符串的结尾。中间的部分是身份证号的具体格式,可以简单解释如下:
- 前6位是地区码,由数字或大写字母组成,共6位;
- 接下来的4位表示出生年份,要求是有效年份,即1900年至今;
- 再接下来的2位表示出生月份,要求是01~12;
- 再接下来的2位表示出生日期,要求是01~31;
- 接下来的3位是顺序码,是该出生日期下的同年同月同日出生的人的编号,从001开始,到999结束;
- 最后一位是校验码,用于校验身份证号是否符合规定,可以是数字0~9或大写字母X。
使用这个正则表达式可以方便地验证一个字符串是否为有效的身份证号。
js身份证号正则表达式
以下是一个简单的 JavaScript 正则表达式,用于验证中国大陆身份证号码:
```javascript
/^[1-9]\d{5}(19|20)\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/
```
该正则表达式可以匹配符合以下规则的身份证号码:
- 前 6 位为行政区划代码,第一位不能为 0。
- 接下来 8 位为出生年月日,其中第 7、8 位为年份,第 9、10 位为月份,第 11、12 位为日期。
- 最后 4 位为顺序编号,其中第 13 位为性别,奇数为男,偶数为女;第 14、15 位为校验码,可为数字 0-9 或字母 X/x。
需要注意的是,该正则表达式只能验证身份证号码的格式是否正确,不能验证身份证号码是否真实存在。
阅读全文