2017-08-10 116 views
-3

这里是一个网址:http://192.168.84.98/scms?F=image&FORMAT=PNG32&TRANSPARENT=true&LAYERS=show:13&BBOXSR=aaa&IMAGESR=3857&SIZE=2528,867&BBOX=-104100.7571006687,-8544.352197105065,230333.2451006686,106152.75219710357&DPI=90正则表达式替换特殊字符串

如何写一个javascript正则表达式来替换“& BBOXSR =”和“&”(AAA)像‘BBB’另一个字符串之间的字符串。注意搜索字符串(“aaa”)是可变的。

希望结果URL字符串为:http://192.168.84.98/scms?F=image&FORMAT=PNG32&TRANSPARENT=true&LAYERS=show:13&BBOXSR=bbb&IMAGESR=3857&SIZE=2528,867&BBOX=-104100.7571006687,-8544.352197105065,230333.2451006686,106152.75219710357&DPI=90

+1

在'&'分开您的URL以获取所有参数可以是一个好的开始。但实际上你的问题太广泛了。你在用什么语言?最后是什么? – Mistalis

+0

另一种不需要'正则表达式'的情况。这个工作可以使用简单的字符串处理('split()','substr()')完成。 – axiac

回答

0

尽管你不需要正则表达式完成这个任务,你在这里只为正则表达式锻炼的缘故解决方案。

var string = " http://192.168.84.98/scms?F=image&FORMAT=PNG32&TRANSPARENT=true&LAYERS=show:13&BBOXSR=aaa&IMAGESR=3857&SIZE=2528,867&BBOX=-104100.7571006687,-8544.352197105065,230333.2451006686,106152.75219710357&DPI=90"; 

string = string.replace(/(BBOXSR=)(\w)+(?=&)/g, "$1red"); 
console.info(string)