2

我有这个:

<iframe src="http://999.999.99.99/reporting/report.php?rid=2&gid=6&ftid=0&fid=1000&gty=1&ltid=1&lid=1000&mode=7&width=220&sid=0&cc=666666,ffa401">

我试图split()在两者之间获得价值rid=&但它没有得到我想要的。我只想要这两者之间的价值。请帮忙。

到目前为止,这是我的代码:

var source = 'http://999.999.99.99/reporting/report.php?rid=2&gid=6&ftid=0&fid=1000&gty=1&ltid=1&lid=1000&mode=7&width=220&sid=0&cc=666666,ffa401';
var rid = source.split('rid= &').pop();
alert(rid);
4

6 回答 6

3

使用此处描述的URL 解析器

var parts = getUrlParts(url);
var rid = parts.rid;
于 2012-12-05T21:57:34.827 回答
2

使用正则表达式

var str="http://999.999.99.99/reporting/report.php?rid=2&gid=6&ftid=0&fid=1000&gty=1&ltid=1&lid=1000&mode=7&width=220&sid=0&cc=666666,ffa401";
var re = /[?&]rid=([^&]+)/i;
var part = str.match(re);
console.log(part[1]);
于 2012-12-05T21:56:37.890 回答
1

考虑使用一个简单的正则表达式:

var rid = src.match(/rid=(\d+)/)[1];
于 2012-12-05T21:54:44.203 回答
1

您可以匹配正则表达式,但如果您想使用 split 进行匹配,请尝试:

var a = src.split("rid=")[1].split("&")[0];
于 2012-12-05T21:57:52.233 回答
0

您可以使用以下代码:

var rid = src.substr(src.indexOf('rid') + 4).split('&')[0];
于 2012-12-05T21:56:52.427 回答
0

非常感谢你们,我真的可以指望你们在这里。

到目前为止,根据您的回答,我已经使用match()过并且效果很好。真的,谢谢各位。:)

于 2012-12-05T22:31:38.553 回答