模糊身份证正则表达式
时间: 2023-08-25 11:05:09 浏览: 45
以下是一个可以匹配模糊身份证号码的正则表达式示例:
```python
import re
def extract_id_number(text):
pattern = r"\b\d{4}[\s_-]?\d{4}[\s_-]?\d{4}[\s_-]?\d{2}[\s_-]?\d{2}\b"
matches = re.findall(pattern, text)
return matches
text = "这是一段包含身份证号码的文本,例如:1234-5678-9012-3456,或者1234567890123456,或者1234 5678 9012 3456。"
id_numbers = extract_id_number(text)
print(id_numbers)
```
这段代码使用了正则表达式模式 `\b\d{4}[\s_-]?\d{4}[\s_-]?\d{4}[\s_-]?\d{2}[\s_-]?\d{2}\b` 来匹配身份证号码。它可以匹配以下格式的身份证号码:
- 1234567890123456
- 1234-5678-9012-3456
- 1234 5678 9012 3456
你可以根据实际情况进行修改和调整正则表达式来适应不同的身份证号码格式。
相关问题
身份证正则表达式全面
身份证正则表达式是一种用于匹配身份证号码的模式,可以用于验证身份证号码的合法性。根据不同的身份证号码规则,可以得到不同的正则表达式。以下是身份证正则表达式的全面介绍:
1. 18位身份证号码正则表达式:^[1-9]\d{5}(19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[1-2]\d|3[0-1])\d{3}[\dXx]$
2. 15位身份证号码正则表达式:^[1-9]\d{5}\d{2}(0[1-9]|1[0-2])(0[1-9]|[1-2]\d|3[0-1])\d{3}$
3. 香港身份证号码正则表达式:^[A-Z]\d{6}\([0-9A]\)$
4. 澳门身份证号码正则表达式:^[1|5|7][0-9]{6}\([***0-9Xx]/
7. 短身份证号码正则表达式:^\d{8,18}|[0-9x]{8,18}|[0-9X]{8,18}?$
8. 首尾空白字符正则表达式:^\s*|\s*$或(^\s*)|(\s*$)
以上是身份证正则表达式的全面介绍,可以根据需要选择相应的正则表达式进行验证。
js身份证正则表达式
以下是一个简单的 JavaScript 函数,使用正则表达式来验证身份证号码的格式是否正确:
```javascript
function isValidIDCard(idCard) {
// 身份证正则表达式
var reg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
return reg.test(idCard);}
```
上述代码仅仅是验证了身份证号码的格式是否正确,而并没有验证身份证号码本身是否合法。如果需要验证身份证号码的合法性,可以使用第三方库或者在线服务。
如果需要使用正则表达式判断当前身份证号是否是22岁,可以先获取当前日期,然后根据身份证号码中的出生日期计算年龄,最后判断是否等于22岁即可。具体代码如下:
```javascript
function is22YearsOld(idCard) {
// 身份证正则表达式
var reg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
if (!reg.test(idCard)) {
return false;
}
var birthYear = parseInt(idCard.substr(6, 4));
var birthMonth = parseInt(idCard.substr(10, 2));
var birthDay = parseInt(idCard.substr(12,2));
var now = new Date();
var nowYear = now.getFullYear();
var nowMonth = now.getMonth() + 1;
var nowDay = now.getDate();
var age = nowYear - birthYear;
if (nowMonth < birthMonth || (nowMonth == birthMonth && nowDay < birthDay)) {
age--;
}
return age == 22;
}
```
相关问题:
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)