手机号码的输入验证 python
时间: 2023-11-09 21:01:08 浏览: 41
手机号码的输入验证可以使用正则表达式来实现。以下是一个简单的示例代码:
```python
import re
def is_valid_phone_number(phone_number):
pattern = re.compile(r'^1[3456789]\d{9}$')
return pattern.match(phone_number) is not None
```
该函数接受一个字符串参数 `phone_number`,并返回一个布尔值,表示该字符串是否为合法的手机号码。如果是合法的手机号码,则返回 `True`,否则返回 `False`。
正则表达式 `r'^1[3456789]\d{9}$'` 的含义是:
- `^` 表示字符串的开头;
- `1` 表示手机号码的第一位必须是数字 1;
- `[3456789]` 表示手机号码的第二位必须是数字 3、4、5、6、7、8 或 9 中的一个;
- `\d{9}` 表示手机号码的后 9 位必须是数字;
- `$` 表示字符串的结尾。
因此,该正则表达式可以匹配所有以数字 1 开头,后面跟着 10 位数字的字符串,即合法的手机号码。
以下是一个示例调用:
```python
phone_number = input('请输入手机号码:')
if is_valid_phone_number(phone_number):
print('输入的手机号码是合法的。')
else:
print('输入的手机号码不合法,请重新输入。')
```
相关问题
python验证手机号
要在Python中验证手机号码,可以使用re模块中的正则表达式。首先,你需要导入re模块,然后定义一个手机号码的正则表达式模式。在这个例子中,使用了一个较为简单的正则表达式模式来验证手机号码。接下来,使用input()函数接收用户输入的手机号码,并使用re.search()函数在用户输入的手机号码中搜索匹配的模式。如果找到了匹配的模式,则说明输入的是一个正确的手机号码,否则说明不是手机号码。最后,根据搜索结果输出相应的提示信息。
正则表达式验证手机号码
以下是使用正则表达式验证中国大陆手机号码的示例:
```python
import re
phone_number = input("请输入手机号码:")
# 以1开头,第二位为3、4、5、7、8,后面跟8位数字
pattern = r"^1[34578]\d{8}$"
if re.match(pattern, phone_number):
print("手机号码格式正确")
else:
print("手机号码格式错误")
```
在上面的代码中,我们使用了 `re` 模块来进行正则表达式匹配,首先定义了一个正则表达式 `pattern`,然后使用 `re.match()` 函数来匹配输入的手机号码是否符合该正则表达式。
其中,`^` 表示字符串的开始位置,`$` 表示字符串的结束位置,`[]` 中的字符表示可选项,`\d` 表示数字,`{8}` 表示需要匹配 8 个数字。