博客
关于我
Python - 正则表达式在括号之间获取数字
阅读量:805 次
发布时间:2023-03-05

本文共 1360 字,大约阅读时间需要 4 分钟。

Python 正则表达式 提取 括号 内 的 数字

在 Python 开发过程中,有时 需要 从 字符串 中 提取 括号 内 的 数字。这可以 通过 使用 正则 表达式 来 实现。以下 是 使用 Python 的 re 模块 的 简单 示例。

首先,导入 re 模块:

import re

接下来,定义 需要 解析 的 字符串:

string = "The answer is (42), the question is what?"

然后,使用 re.findall 函数 来 找到 所有 括号 内 的 数字:

matches = re.findall(r'\(([0-9]+)\)', string)

返回 的 matches 是 一个 列表,包含 所有 括号 内 的 数字。例如:

print(matches)  # 输出:['42']

如果 需要 提取 第一个 匹配 到 的 数字,可以 直接 访问 matches[0]:

first_match = matches[0]print(first_match)  # 输出:'42'

在 上述 正则 表达式 \(([0-9]+)\) 中,([0-9]+) 是 一个 捕获 组,它 匹配 一个 或 多个 数字。左括号 ( 和 右括号 ) 是 正则 表达式 中的 特殊 字符,需要 用 转义字符 \ 来 表示。

需要注意的是,上述 示例 假设 每个 括号 内 只 包含 一个 数字。如果 括号 内 可能 包含 多个 数字,正则 表达式 需要 进行 相应 修改。例如:

string = "The answer is (1, 2, 3), the question is what?"

使用下面的 正则 表达式:

matches = re.findall(r'\(([0-9]+)\)', string)

返回 的 列表 将 包含 所有 括号 内 的 数字:

print(matches)  # 输出:['1', '2', '3']

为了 测试 该 函数,可以 编写以下 函数:

def test_get_numbers():    assert get_numbers("The answer is (42), the question is what?") == ['42']    assert get_numbers("The answer is (1, 2, 3), the question IS what?") == ['1', '2', '3']    assert get_numbers("No numbers here") == []

运行 测试 函数:

test_get_numbers()

如果 所有 测试 都 获得通过,函数 将 输出 "All tests passed."。

关于 人工智能 大 模型 的 应用,这个 示例 可能 没有 特别 大 的 应用 场景。但是 如果 你 希望 在 大 型 文本 中 快速 找到 所有 数字,你 可能 需要 使用 专门 的 自然语言 处理 工具 或 大 模型。例如,你 可以 在 大型 文本 中 使用 大 模型 来 找到 所有 数字,然后 在 Python 中 找到 这些 数字 在 文本 中 的位置。

转载地址:http://dsafk.baihongyu.com/

你可能感兴趣的文章
python 一个list去除另一个list中的值
查看>>
python 三大框架的 介绍。
查看>>
Python 下载的 11 种姿势,一种比一种高级!
查看>>
python读取一个文件夹下所有图片_初学Python-找出文件夹下的所有图片
查看>>
Python 中 3 个不可思议的返回功能
查看>>
python 中 dict 的另一种用法
查看>>
Python 中 PIL 读取图片出现异常旋转的解决方法
查看>>
python读取word表格内容(1)
查看>>
python 中os.path.join 双斜杠的解决办法
查看>>
python 中PIL.Image和OpenCV图像格式相互转换
查看>>
Python 中Semaphore 信号量对象、Event事件、Condition
查看>>
python 中with的使用及样例
查看>>
python读取wav文件并播放[pyaudio/wave]
查看>>
python读取txt文件的行数
查看>>
Python 中内置的最大堆 API
查看>>
Python 中只有一个 True 和一个 False 对象吗?
查看>>
python读取mtcars数据集并实现以下操作_关于数据处理。。,Python交流,技术交流区,鱼C论坛 - Powered by Discuz!...
查看>>
Python 中多线程与多处理之间的区别
查看>>
Python 中如何使用 lambda 函数
查看>>
Python 中如何创建多行字符串?
查看>>