用Python爬虫程序使用户输入任意字符串,简易判断其中的电话号码是否对符合要求。 电话号码格式为'0791-1234567',请自行编写该正则 3)用户输入任意字符串,简易判断是否是合法的身份证号
时间: 2024-10-20 18:17:21 浏览: 26
在Python中,你可以使用正则表达式库`re`来实现这个功能。首先,对于电话号码的验证,可以创建一个正则模式匹配'0791-'开头,后面跟上5位数字,接着是一个短横线'-', 然后又是4位数字。以下是示例代码:
```python
import re
def is_valid_phone_number(input_string):
pattern = r'^0791-\d{5}-\d{4}$'
if re.match(pattern, input_string):
return True
else:
return False
# 用户输入电话号码
phone_input = input("请输入电话号码(格式:0791-1234567): ")
print(f"电话号码 {'是' if is_valid_phone_number(phone_input) else '不是'} 符合要求.")
# 相关问题--
1. 如何修改正则表达式以支持其他城市的区号?
2. 如果电话号码格式稍有变动,如何调整此函数?
3. 是否存在更复杂的情况,如电话号码可能存在空格或括号等干扰字符?
```
对于身份证号码的验证,中国的18位身份证号通常包含15位数字和最后一位校验码,格式为XXX XXXXX XXXXX XX。这里有一个简化版的正则表达式,不过请注意这只是一个基本的检查,实际验证需要考虑出生日期等因素:
```python
def is_valid_id_number(input_string):
pattern = r'^\d{15}(18|19|20)\d{2}(\d{2}|[Xx])$'
if re.match(pattern, input_string):
return True
else:
return False
id_input = input("请输入身份证号(格式:123456789012345678): ")
print(f"身份证号 {'是' if is_valid_id_number(id_input) else '不是'} 正确.")
# 相关问题--
1. 如何区分出生日期信息?
2. 身份证号的校验规则是如何的?
3. 这个正则表达式能否处理含有错误字符的身份证号?
```
阅读全文