gpt4 book ai didi

python - 如何使用 python 正则表达式提取内容可变的数据?

转载 作者:太空宇宙 更新时间:2023-11-03 19:01:19 26 4
gpt4 key购买 nike

我正在尝试构建一个市场分析工具。原始数据输入的格式如下:

20,000 shares for 550 USD each

意思是“20,000股股票,每股550美元”。

通常,我会使用以下代码来获取价格:

value = re.findall(re.compile('20,000 shares for (.*) USD each'), data)

但是,这种方法让我失败了,因为股票数量(在本例中为 20,000 股)以及价格都发生了变化。有没有更好的方法来提取这些数据?

对于我的问题描述不正确,我提前表示歉意;我是 Python 的新手,我不确定在这种情况下使用哪些技术术语。如果有更好的方式来表达我的标题,请随时编辑,提前谢谢!

最佳答案

您可以使用更通用的模式,例如:

([\d,.]+) shares for ([\d,.]+) USD each

此外,如果您想坚持使用 .* 来匹配值,最好将其转换为 .*? 使其不那么贪婪,这样它就不会吃东西其余的输入。

如果输入可以以 eachper share 结尾,请改用以下内容:

([\d,.]+) shares(?: of stock)? at ([\d,.]+) USD (?:each|per share)

在左括号后放置 ?: 会使其成为不匹配的组,因此它不会与您感兴趣的数字一起被捕获。

关于python - 如何使用 python 正则表达式提取内容可变的数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15984103/

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