python 正则表达式 纯数字
时间: 2023-07-18 12:10:22 浏览: 167
可以使用以下正则表达式匹配纯数字:
```python
import re
pattern = r'^\d+$'
text = '1234567890'
if re.match(pattern, text):
print('匹配成功')
else:
print('匹配失败')
```
解释一下正则表达式的含义:
- `^` 表示匹配字符串的开头
- `\d` 表示匹配数字
- `+` 表示匹配前面的字符一次或多次
- `$` 表示匹配字符串的结尾
因此,`^\d+$` 表示匹配由一次或多次数字组成的字符串。
相关问题
python 正则表达式只要英文
您好!对于只匹配英文字母的正则表达式,您可以使用 `[a-zA-Z]+`。这个表达式可以匹配一个或多个连续的英文字母。例如,可以使用 `re.findall("[a-zA-Z]+", text)` 来找出文本中的所有英文单词。
请注意,这个表达式只匹配纯英文字母,不包括空格、标点符号或数字。如果您希望匹配包含空格的英文单词,可以使用 `[\w\s]+`。其中 `\w` 匹配字母、数字和下划线,`\s` 匹配空格。
希望能对您有所帮助!如果您还有其他问题,请随时提问。
python匹配正则表达式手机号和固定电话
在Python中,你可以使用`re`模块(正则表达式模块)来匹配手机号码和固定电话号码。通常,手机号码和固定电话的格式可能会有所不同,这里提供一种基础的通用模式:
1. **手机号码**(中国大陆为例,包括11位数字,可能有区号前缀):
```python
import re
phone_pattern = r'^\d{11}$' # 匹配11位纯数字
or
mobile_pattern = r'^\+86\d{11}$' # 匹配带国际区号+86的11位数字
match = re.match(mobile_pattern, '13912345678') # 示例匹配
```
2. **固定电话**(中国区号+固话号码,可能包含区号、分机号等):
```python
landline_pattern = r'^\+\d{8,13}$' # 匹配8到13位数字,可能含区号
landline_pattern += r'|^\(\d{2,3}\) \d{7,8}$' # 区号加七到八位数字,如(010) 12345678
match = re.match(landline_pattern, '(010) 12345678') # 示例匹配
```
请注意,这只是一个基本示例,实际的正则表达式可能需要根据具体的电话号码格式进行调整。此外,上述代码会直接尝试匹配字符串,如果需要验证整个列表或从用户输入获取的数据,可以使用`re.search()`或`re.findall()`。
阅读全文