gpt4 book ai didi

python - 如何仅从值 $1,632.50 中提取数字 (BigQuery)

转载 作者:行者123 更新时间:2023-11-28 22:13:03 26 4
gpt4 key购买 nike

我只想提取小数点前的数字。

例如 -> $1,632.50

我希望它返回 1632。

如果存在与值关联的逗号,我当前的正则表达式 (r'[0-9]+') 无法获取正确的值。

示例 --> $1,632.50 它返回 1

但是对于 ---> $500.00 它返回 500在这种情况下效果很好

我是正则表达式的新手。感谢任何帮助

PS:我目前正在使用 Bigquery 和我只有 REGEX_EXTRACT 和 REGEX_REPLACE 可以使用。

这里的大多数解决方案都适用于普通的 python 脚本,但我仍然无法让它适用于 BigQuery

最佳答案

以下是 BigQuery 标准 SQL

REGEXP_REPLACE(str, r'\..*|[^0-9]', '')   

如您所见,这里只有一个 REGEXP_REPLACE 完成了工作

你可以使用下面的虚拟数据来测试、玩它

#standardSQL
WITH t AS (
SELECT '$1,632.50' AS str UNION ALL
SELECT '$500.00'
)
SELECT
str,
REGEXP_REPLACE(str, r'\..*|[^0-9]', '') AS extracted_number
FROM t

结果

Row str         extracted_number     
1 $1,632.50 1632
2 $500.00 500

关于python - 如何仅从值 $1,632.50 中提取数字 (BigQuery),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54297477/

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