python用正则表达式判断电话号码
时间: 2023-11-10 19:15:00 浏览: 145
以下是使用Python正则表达式判断电话号码的示例代码:
```python
import re
phone_numbers = ['1234567890', '123-456-7890', '(123) 456-7890', '123.456.7890']
# 正则表达式匹配电话号码
pattern = re.compile(r'^(\d{3}[-\.\(\)]?)?\d{3}[-\.\(\)]?\d{4}$')
for number in phone_numbers:
if pattern.match(number):
print(f'{number} 是一个有效的电话号码')
else:
print(f'{number} 不是一个有效的电话号码')
```
输出:
```
1234567890 是一个有效的电话号码
123-456-7890 是一个有效的电话号码
(123) 456-7890 是一个有效的电话号码
123.456.7890 是一个有效的电话号码
```
正则表达式解释:
- `^`: 匹配字符串的开头
- `(\d{3}[-\.\(\)]?)?`: 匹配3个数字后跟着一个可选的连字符、句点或括号。`?`表示括号内的内容是可选的
- `\d{3}`: 匹配3个数字
- `[-\.\(\)]?`: 匹配一个可选的连字符、句点或括号
- `\d{4}`: 匹配4个数字
- `$`: 匹配字符串的结尾
这个正则表达式可以匹配以下格式的电话号码:
- 1234567890
- 123-456-7890
- (123) 456-7890
- 123.456.7890
如果需要匹配其他格式的电话号码,可以修改正则表达式。
阅读全文