You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Redshift正则提取数组格式字符串中的数字

Redshift正则提取数组格式字符串内容

如果你的列中存储的是类似[1,2,3]或[1, 2, 3]这类数组格式的字符串,直接使用Redshift的REGEXP_REPLACE函数就能快速提取出中间的逗号分隔值,完全不需要复杂的嵌套CTE或JSON解析逻辑:

基础版(无空格场景)

适用于数组元素间无空格的情况,比如[1,2,3]:

SELECT REGEXP_REPLACE(your_column, '^\[|\]$', '') AS extracted_values
FROM your_table;

正则说明:

  • ^\[:匹配字符串开头的左方括号[
  • \]$:匹配字符串结尾的右方括号]
  • |:逻辑或,将匹配到的首尾括号替换为空字符串,得到中间的1,2,3

进阶版(含空格场景)

如果数组元素间有空格,比如[1, 2, 3],可以同时移除空格:

SELECT REGEXP_REPLACE(your_column, '^\[|\]$|\s+', '') AS extracted_values
FROM your_table;

新增的\s+会匹配任意数量的空白字符(空格、制表符等),替换后得到无空格的1,2,3

内容的提问来源于stack exchange,提问作者Jwan622

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 03:15:48