python提取字符串中的数
时间: 2023-05-29 17:01:51 浏览: 87
有多种方法可以提取字符串中的数字,下面列举其中几种常用的方法。
1. 使用正则表达式:
使用re模块中的findall函数,传入一个正则表达式即可快速匹配出所有数字。例如:
```python
import re
text = "AB123CD456E789"
numbers = re.findall(r'\d+', text)
print(numbers)
```
输出:
```
['123', '456', '789']
```
2. 使用isdigit函数:
使用字符串的isdigit方法,遍历每个字符并检查是否为数字,如果是,则加入结果列表。例如:
```python
text = "AB123CD456E789"
numbers = []
for char in text:
if char.isdigit():
numbers.append(char)
print(''.join(numbers))
```
输出:
```
123456789
```
3. 使用isnumeric函数:
与isdigit类似,使用字符串的isnumeric方法,遍历每个字符并检查是否为数值字符,如果是,则加入结果列表。例如:
```python
text = "AB123CD456E789"
numbers = []
for char in text:
if char.isnumeric():
numbers.append(char)
print(''.join(numbers))
```
输出:
```
123456789
```
4. 使用ascii码:
遍历每个字符并检查其ascii码是否在0-9之间,如果是,则加入结果列表。例如:
```python
text = "AB123CD456E789"
numbers = []
for char in text:
if 48 <= ord(char) <= 57:
numbers.append(char)
print(''.join(numbers))
```
输出:
```
123456789
```