如何用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只是一种示意,你可以按照具体业务逻辑调整返回值的处理方式)。
相关推荐
Alan GEO实施教练7 分钟前
专利申请是否找代理机构:核心考量与决策逻辑拆解
大数据·人工智能·python
oyguyteggytrrwwwrt7 分钟前
抄写YOLOE源码——先抄写ultralytics包,关于__init__.py
开发语言·python
berryyan15 分钟前
🚀 Windows + RTX 5090 + ComfyUI 桌面版 安装 SageAttention 完全手册
人工智能·python
性感程序员在线debug20 分钟前
Python yield 原理
python
Alan GEO实施教练21 分钟前
实用新型专利申请代理机构选择:关键考量因素与实操要点讲解
java·开发语言·python
闲云lazycloud26 分钟前
08-Java工程师的Python第八课-框架入门
python
是真的小外套28 分钟前
第十一章:Flask入门之从零构建Python Web应用
前端·python·flask
Westward-sun.38 分钟前
NLP 词向量实战:PyTorch 从零实现 CBOW(Word2Vec)全流程拆解
人工智能·pytorch·python·深度学习·自然语言处理·word2vec
青瓷程序设计40 分钟前
基于YOLO的安全帽佩戴检测系统~Python+模型训练+2026原创+YOLO算法
python·算法·yolo
badhope1 小时前
2025年3月AI领域纪录:从模型开源到智能体价值重估——风云变幻DLC
人工智能·python·深度学习·计算机视觉·数据挖掘