python正则表达式校验港澳台居民通行证
时间: 2023-11-20 22:59:00 浏览: 165
Python的正则表达式的验证
根据港澳台居民通行证的规则,其证件号码由8位数字和1位字母组成,字母只能是X。因此,可以使用Python中的re模块来编写正则表达式进行校验。以下是一个示例代码:
```python
import re
def check_passport(passport):
pattern = r'^[HMhm]{1}([0-9]{10}|[0-9]{8})$'
if re.match(pattern, passport):
return True
else:
return False
# 测试
passport = 'H12345678'
if check_passport(passport):
print('该港澳台居民通行证号码格式正确')
else:
print('该港澳台居民通行证号码格式不正确')
```
在上述代码中,使用了re.match()方法来匹配正则表达式。其中,正则表达式的含义为:以H或M开头,后面跟着8位或10位数字,其中10位数字的第一位可以是H或M,8位数字的第一位可以是H、M或X。如果匹配成功,则返回True,否则返回False。
阅读全文