gpt4 book ai didi

Javascript 使用非捕获组获取查询字符串值

转载 作者:搜寻专家 更新时间:2023-11-01 04:16:04 24 4
gpt4 key购买 nike

给定这个查询字符串:

?cgan=1&product_cats=mens-jeans,shirts&product_tags=fall,classic-style&attr_color=charcoal,brown&attr_size=large,x-small&cnep=0

我如何从这些参数类型中提取值 'product_cat, product_tag, attr_color, attr_size' 只返回 'mens-jeans,shirts,fall,classic-style,charcoal,棕色,大号,x-小号?

我尝试为参数类型使用非捕获组,为值使用捕获组,但它同时返回了这两者。

(?:product_cats=|product_tags=|attr\w+=)(\w|,|-)+

最佳答案

您可以使用

收集这些值
(?:product_cats|product_tags|attr\w+)=([\w,-]+)

请注意,字符类 ([\w,-]+) 比替代列表 ((\w|,|-)* ),并且我们避免了只捕获最后一个字符的问题。

这是一个代码示例:

var re = /(?:product_cats|product_tags|attr\w+)=([\w,-]+)/g; 
var str = '?cgan=1&product_cats=mens-jeans,shirts&product_tags=fall,classic-style&attr_color=charcoal,brown&attr_size=large,x-small&cnep=0';
var res = [];
while ((m = re.exec(str)) !== null) {
res.push(m[1]);
}
document.getElementById("res").innerHTML = res.join(",");
<div id="res"/>

关于Javascript 使用非捕获组获取查询字符串值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30569107/

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