作者wxyy (装笑帏)
看板Ajax
标题Re: [讨论] 怎麽分析超连结的网址
时间Thu May 27 17:34:36 2010
※ 引述《JYHuang (夏天到了,冷不起来了说)》之铭言:
: ※ 引述《knives ()》之铭言:
: : 在我的网页,关於使用者的超连结是写成这样
: : <a href="space.php?uid=66&tid=44">使用者姓名</a>
: : 我希望用jQuery的each 配合正规表示法,找出里面的uid值,再透过uid去取得头像
: : 可是我取得里面的href,要怎麽样才能取得里面的 uid
: : 因为有可能里面的网址会变成 space.php?tid=44&gid=11&uid=9
: : uid的位置不一定都在相同的位址
: : 我目前只写到这里,卡在怎麽有效取得uid的值
: : var re = /^space.php?*uid=*/;
: : $('a').each(function(i){
: : if (re.test(this.href))
: : { //是使用者连结
: : //怎麽取得uid值
: var match = this.href.match(/^space.php.+uid=(\d+)&+.+/)
: uid = match[1];
: : }
: : 因为我用str.replace、str_split好像也不是很有效率
: : 请问有没有比较快的方法可以取得uid
: : 谢谢回答
: 大约是如此,应该可以再把它跟if(re.test())的判断式再合并
可以直接用 re.test() 处理一次 regex 就好...
var re = /^space\.php\?.*uid=(\d+).*$/;
$('a').each(function(i) {
if (re.test(this.href)) {
var uid = RegExp.$1; // RegExp.$1 只能用一次而已 所以先把结果指派给变数.
}
});
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 218.4.142.50