Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 字符串的正则表达式_Jquery_Regex - Fatal编程技术网

Jquery 字符串的正则表达式

Jquery 字符串的正则表达式,jquery,regex,Jquery,Regex,我正在尝试编写一个正则表达式来匹配某个字符串。目前我有一个正则表达式: regx = /wid=\d+(\.\d)*/g, 以下链接/字符串中的哪个匹配wid=100: image/hugoboss/test%2Dimg?wid=100 但是,我想将此链接/字符串扩展到: image/hugoboss/test%2Dimg?wid=100&crop=0,0,960,650 因此,它以这种格式结束&crop=0,0960650。我如何调整我的正则表达式,使其匹配wid=100&cro

我正在尝试编写一个正则表达式来匹配某个字符串。目前我有一个正则表达式:

regx = /wid=\d+(\.\d)*/g,
以下链接/字符串中的哪个匹配
wid=100

image/hugoboss/test%2Dimg?wid=100
但是,我想将此链接/字符串扩展到:

image/hugoboss/test%2Dimg?wid=100&crop=0,0,960,650
因此,它以这种格式结束
&crop=0,0960650
。我如何调整我的正则表达式,使其匹配
wid=100&crop=0,0960650


谢谢

您可以使用下面的正则表达式

wid=\d+(\.\d)*(?:&crop=\d+(?:,\d+)*)?

下面的正则表达式允许在字符串
crop

wid=\d+(\.\d)*(?:&crop=\d+(?:\.\d+)?(?:,\d+(?:\.\d+)?)*)


从索引1中获取匹配的组

\?(.*)$

正则表达式查找
之后的所有内容,直到字符串/行结束

示例代码:

var str="image/hugoboss/test%2Dimg?wid=100&crop=0,0,960,650";
var re = /\?(.*)$/; 
console.log(str.match(re)[1]);
输出:

wid=100&crop=0,0,960,650

预期的输出是什么?您是否只对URL中的查询字符串感兴趣?您的意图是什么?只需从URL获取key=value对!或者需要某些键=值对?您是否感到困惑?分享更多信息。你怎么看?在这种情况下,当你提到使用正则表达式时,它是解决已解决问题的脆弱手段。虽然如果您必须使用正则表达式(请不要使用,它确实充满了边缘情况),但这个答案可能更有用:根据问题,我认为您应该使用
/(wid.*.$/
wid=100&crop=0,0,960,650