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

使用AWS Athena或PrestoDB正则函数提取URL指定分隔符后字符串

解决方法

实现逻辑

由于你需要匹配的分隔符包含多字符的%7C,直接写多分隔符匹配的正则复杂度较高,我们可以先做一次字符替换简化处理:

  1. 先将url中的所有%7C替换为单字符分隔符&
  2. 再用正则提取所有不属于/、?、&的连续字符,即可得到你需要的结果

最终查询语句

SELECT regexp_extract_all(replace(url, '%7C', '&'), '[^/?&]+')
FROM logs.url
WHERE request_verb='GET'
  AND REGEXP_LIKE(url, 'https://api.abc.com:443/xyz/live/');

正则说明

[^/?&]+ 表示匹配长度至少为1、且不包含/、?、&三个分隔符的连续字符串,会自动跳过分隔符之间的空内容,输出结果和你给出的预期格式完全一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 12:54:04