sql - 在 SQL (Amazon Redshift) 中使用正则表达式提取标签
问题描述
我已经尝试了几个小时来解决这个问题,但被卡住了。
我正在尝试提取此子字符串
dg
从这样的事情
agent/bond,am/dg,day/sunday,man/woman,exemption/yes,account/true
或者
am/dg,agent/bond,day/sunday,man/woman,exemption/yes,account/true
在 Redshift 中使用正则表达式。
我接近了regexp_substr(tags,'[(^am\/$)][^,]+')
,但它并没有完全起作用。
感谢您的任何帮助,您可以提供。
解决方案
我们也许可以在REGEXP_REPLACE
这里使用捕获组:
SELECT
REGEXP_REPLACE(input, '.*\yam/([^,]+).*', '$1')
FROM yourTable;
推荐阅读
- sql - 如何在rails中的同一张表上获得具有不同where条件的列的总和?
- c# - 在MVC中的javascript中嵌套foreach
- ruby-on-rails - Rails - 检查查询是否没有返回结果
- java - Wildfly:服务器重启后授权失败
- powershell - 如何在 PowerShell 中将 UInt32 转换为(负)Int32?
- java - Apache flink 无法编译加入流代码 | Kinesis 数据分析
- typescript - 如何在 iModelJS 中获取元素的坐标
- python - 远程服务器上 docker 内的 Tensorboard
- c++ - 出现 std::vector 错误:“无法将向量递增到末尾”,同时想要擦除特定元素
- python - 将 ElasticSearch 连接到超集