gpt4 book ai didi

python - 正则表达式 Python 提取数

转载 作者:太空宇宙 更新时间:2023-11-04 09:27:00 24 4
gpt4 key购买 nike

如何从文本字符串中只提取数字。多次出现 C{d}{d}{d}... 必须将其删除。仅保留数字。

text=['C1412DRE, New York 2695','Direction 12','Main Street 6254 C13D']
re.sub('[a-zA-Z]', '', str(text))


Desired output:
[2695,12,6254]

最佳答案

与其尝试去除所有字母字符,不如搜索所有独立数字。这是一个选项,使用 re.findall 和正则表达式模式 \b\d+\b:

text = ['C1412DRE, New York 2695','Direction 12','Main Street 6254 C13D']
inp = ' '.join(text)
matches = re.findall(r'\b\d+\b', inp)
print(matches)

['2695', '12', '6254']

我的逻辑中一个可能的缺陷是我将您的字符串列表连接成一个字符串,并用空格分隔。这是必需的,因为 re.findall 需要单个字符串进行搜索。但是,由于正则表达式模式仅查找已经由单词边界分隔的数字,因此按空格连接不应引入任何副作用(我认为)。

关于python - 正则表达式 Python 提取数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57167667/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com