求老SJ帮写段正则匹配字符串中指定的参数

str = "http://bbs.aa.cc/avatar.php?uid=157135&size=large"

我想匹配uid=157135,
并且这个参数出现的位置不一定是固定的。
例如放在最后面:http://bbs.aa.cc/avatar.php?s...
或者最前边

阅读 3.5k
7 个回答

function GetQueryString(name) {

var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
var r = window.location.search.substr(1).match(reg);
if (r != null) return unescape(r[2]); return null;

}

GetQueryString('uid')

location.search.split('&').find(item => /^uid=/.test(item));
/uid=([^&]*)/g.exec("http://bbs.aa.cc/avatar.php?uid=157135&size=large")[1]
    var m = str.match(/uid=(\d+)/)
    var uid = m !== null ? m[1] : null
>>> s = "http://bbs.aa.cc/avatar.php?uid=157135&size=large"
>>> import re
>>> p = re.compile('uid=\d+')
>>> p.search(s)
<_sre.SRE_Match object; span=(28, 38), match='uid=157135'>
推荐问题