博客
关于我
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 写入json数据到数据库
查看>>
Python 出现 TypeError: ‘encoding‘ is an invalid keyword argument for this function 解决方法
查看>>
python 出现 TypeError: ‘list‘ object is not callable 的解决方法
查看>>
python 函数1
查看>>
python 函数学习
查看>>
Python 分析天气,告诉你中秋应该去哪里
查看>>
Python 列表删除相同的元素
查看>>
Python 初学者需要知道的四条建议
查看>>
Python 判断字符串是否包含子字符串
查看>>
python 判断当前时间是否为零点
查看>>
python 利用pandas读取本地中CSV文件的指定列 列名重命名 并保存回本地
查看>>
python 利用pyspark读取HDFS中CSV文件的指定列 列名重命名 并保存回HDFS
查看>>
python 利用pyttsx3文字转语音
查看>>
python 利用已有Ner模型进行数据清洗合并
查看>>
python 到大数据开发工程师_如何成为一个大数据开发工程师?
查看>>
python 加密解密(base64, AES)
查看>>
Python 和Java 哪个更适合做自动化测试?
查看>>
python 图片转ico
查看>>
python 图片转文字、语音转文字、文字转语音保存音频并朗读
查看>>
python 在包含类似字符\x16、\x12、\x某某的数组中将以\x开头的字符找出来的方法
查看>>