python 正则表达式匹配手机号码
时间: 2024-04-29 18:18:31 浏览: 394
可以使用 Python 中的 re 模块来实现正则表达式匹配手机号码。以下是一个示例代码:
```python
import re
# 定义手机号码正则表达式
phone_pattern = r'^1[3-9]\d{9}$'
# 测试用例
test_cases = ['13812345678', '19987654321', '12345678901', '19234567890']
# 匹配手机号码
for phone in test_cases:
match = re.match(phone_pattern, phone)
if match:
print(f"{phone} 是合法的手机号码")
else:
print(f"{phone} 不是合法的手机号码")
```
正则表达式 `r'^1[3-9]\d{9}$'` 匹配的是以数字 1 开头,第二位是 3-9 中的任意一个数字,后面跟着 9 个数字的字符串,也就是手机号码的格式。
相关问题
Python正则表达式匹配手机号码
以下是Python正则表达式匹配手机号码的示例代码:
```python
import re
phone_number = input("请输入手机号码:")
pattern = r'^1[3-9]\d{9}$'
match = re.match(pattern, phone_number)
if match:
print("输入的手机号码是有效的。")
else:
print("输入的手机号码无效,请重新输入。")
```
上述代码中,首先导入了Python的re模块,然后通过input()函数获取用户输入的手机号码。接着定义了一个正则表达式模式,该模式可以匹配以1开头的11位数字,其中第二位数字可以是3-9之间的任意一个数字。然后使用re.match()函数对输入的手机号码进行匹配,如果匹配成功,则说明输入的手机号码是有效的,否则说明输入的手机号码无效。
python正则表达式匹配
Python正则表达式匹配是通过使用re模块来实现的。该模块提供了一组功能强大的函数,用于在字符串中进行模式匹配。
以下是一个简单的例子,使用re模块中的search函数来查找字符串中的数字:
```python
import re
# 定义一个字符串
str = "The price of this item is $100.99."
# 使用正则表达式查找数字
match = re.search(r'\d+\.\d+', str)
# 如果找到了匹配项,则打印结果
if match:
print("Found a match:", match.group())
else:
print("No match found.")
```
在上面的代码中,我们使用了一个正则表达式来匹配字符串中的数字。该正则表达式包含以下部分:
- \d+:匹配一个或多个数字
- \.:匹配一个点号
- \d+:匹配一个或多个数字
因此,该正则表达式可以匹配任意十进制数字。
如果找到了匹配项,则会打印"Found a match: 100.99",否则会打印"No match found."。
除了search函数外,re模块还提供了其他函数,例如findall、sub等等,这些函数可以帮助我们在字符串中进行更复杂的模式匹配。
阅读全文