以下是使用 Python 的re
模块从第1班第2个位置
这样的字符串中提取出数字并返回类似(0, 1)
这种形式的示例代码,假设数字都是一位数的情况(如果是多位数可以按照后续介绍稍作调整):
import re
def extract_numbers(text):
numbers = re.findall(r'\d', text)
if len(numbers) >= 2:
return int(numbers[0]) - 1, int(numbers[1]) - 1
return None # 如果没找到两个数字可以根据需求返回合适的值,这里返回None示意
text = "第1班第2个位置"
result = extract_numbers(text)
print(result)
在上述代码中:
- 首先定义了函数
extract_numbers
,它接收一个字符串参数text
。 - 在函数内部,使用
re.findall(r'\d', text)
来查找字符串中所有的数字字符,将找到的数字以列表形式存储在numbers
变量中。 - 接着判断
numbers
列表的长度是否大于等于 2,如果是,就将提取到的第一个数字(索引为 0)和第二个数字(索引为 1)分别转换为整数(并且做了减 1 的操作以符合返回类似索引从 0 开始的(0, 1)
这种效果,你可以根据实际需求决定是否减 1 等处理),然后以元组形式返回。 - 如果提取的数字不足两个,就返回
None
(这里返回None
只是一种示意,你可以按照具体业务逻辑调整返回值的处理方式)。