如何用re从第1排第2个位置中找到两个数字返回(0,1)

以下是使用 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)

在上述代码中:

  1. 首先定义了函数extract_numbers,它接收一个字符串参数text
  2. 在函数内部,使用re.findall(r'\d', text)来查找字符串中所有的数字字符,将找到的数字以列表形式存储在numbers变量中。
  3. 接着判断numbers列表的长度是否大于等于 2,如果是,就将提取到的第一个数字(索引为 0)和第二个数字(索引为 1)分别转换为整数(并且做了减 1 的操作以符合返回类似索引从 0 开始的(0, 1)这种效果,你可以根据实际需求决定是否减 1 等处理),然后以元组形式返回。
  4. 如果提取的数字不足两个,就返回None(这里返回None只是一种示意,你可以按照具体业务逻辑调整返回值的处理方式)。
相关推荐
2501_9445264210 小时前
Flutter for OpenHarmony 万能游戏库App实战 - 笑话生成器实现
android·javascript·python·flutter·游戏
程序媛徐师姐10 小时前
Python基于人脸识别的社区签到系统【附源码、文档说明】
python·人脸识别·python人脸识别·python社区签到系统·python人脸识别社区签到·人脸识别社区签到系统·社区签到系统
deephub10 小时前
使用 tsfresh 和 AutoML 进行时间序列特征工程
人工智能·python·机器学习·特征工程·时间序列
0思必得011 小时前
[Web自动化] Selenium中Select元素操作方法
前端·python·selenium·自动化·html
Duang007_11 小时前
【万字学习总结】API设计与接口开发实战指南
开发语言·javascript·人工智能·python·学习
小北方城市网11 小时前
JVM 调优实战指南:从问题排查到参数优化
java·spring boot·python·rabbitmq·java-rabbitmq·数据库架构
Java程序员威哥11 小时前
用Java玩转机器学习:协同过滤算法实战(比Python快3倍的工程实现)
java·开发语言·后端·python·算法·spring·机器学习
CryptoRzz11 小时前
如何高效对接美股实时行情?StockTV API 实战集成指南
java·python·flask·区块链·maven·symfony
Jackson@ML11 小时前
2026最新版Python 3.14.2安装使用指南
开发语言·python
飞Link11 小时前
指令调整阶段中的通用模型蒸馏、模型自我提升和数据扩充
python·算法·数据挖掘