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

如何提取名称动态、后缀固定的URL查询参数的值

基于固定后缀匹配提取URL查询参数值的解决方案

核心思路:先完整解析URL的查询参数为键值对集合,再遍历所有参数键匹配_color后缀,对应取值即可。

JavaScript 浏览器端实现

  • 实现代码(无额外依赖,兼容所有现代浏览器):
function getColorParam(url) {
  const urlObj = new URL(url);
  for (const [paramKey, paramValue] of urlObj.searchParams) {
    if (paramKey.endsWith('_color')) return paramValue;
  }
  // 无匹配参数时返回空值或自定义默认值
  return null;
}

// 测试示例
const testUrl = 'https://www.example.com/us/2000440926.html?dwvar_2000440926_color=02';
console.log(getColorParam(testUrl)); // 输出结果:02

Python 实现

  • 实现代码(基于标准库,无需安装第三方依赖):
from urllib.parse import urlparse, parse_qs

def get_color_param(url):
    parsed_url = urlparse(url)
    query_params = parse_qs(parsed_url.query)
    for param_key in query_params:
        if param_key.endswith('_color'):
            # parse_qs默认返回值列表,取第一个匹配值即可
            return query_params[param_key][0]
    return None

# 测试示例
test_url = "https://www.example.com/us/2000440926.html?dwvar_2000440926_color=02"
print(get_color_param(test_url)) # 输出结果:02

通用正则匹配实现

如果开发环境没有现成的URL解析工具,可直接用正则匹配提取:

  • 匹配规则:[?&]([^&=]+_color)=([^&]+)
  • 示例代码(JavaScript):
function getColorParamByReg(url) {
  const matchResult = url.match(/[?&]([^&=]+_color)=([^&]+)/);
  return matchResult ? matchResult[2] : null;
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.23 19:45:03