php如何利用正则表达式验证身份证号是否正确
功能介绍:如何利用php语法中的正则表达式验证身份证号是否正确,下面先给大家简单介绍一下示列!
具体代码:
$reg = '/^([1-9]\d{5})(19\d{2}|20\d{2})(0[1-9]|1[012])(0[1-9]|[12]\d|3[01])\d{3}(\d|X)$/i';
$idCard = '11021211114932';
if (preg_match($reg, $idCard)) {
echo '身份证号正确';
} else {
echo '身份证号错误';
}
正则表达式介绍:
| 正则表达式 | 描述 |
|---|---|
| ^ | 表示以这个正则表达式开始匹配 |
| () | 表示一个分组 |
| [1-9] | 表示1到9中的任意一个数字 |
| \d | 表示任意一个数字,等同于[0-9] |
| {5} | 表示前面的元素要重复5次 |
| | | 表示或者 |
| [12] | 表示1或2 |
| $ | 表示以这个正则表达式结束匹配 |
| i | 表示对大小写不敏感 |
