日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

正则-匹配获取url参数

發布時間:2023/12/13 综合教程 23 生活家
生活随笔 收集整理的這篇文章主要介紹了 正则-匹配获取url参数 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.根據指定參數名獲取參數值

A頁面向連接到B頁面的url為:

http://www.189dg.com/ajax/sms_query.ashx?action=smsdetail&sid=22&stime=2014-06-27&etime=2014-06-27

我們要得根據參數名獲取到參數值,如根據action可以獲取到smsdetail

B頁面里:

我們可以通過 var url = window.location;獲取到A頁面傳輸過來的url。

var sid = GetParam(url, "sid");//這樣我們就獲取到參數名為sid的值,即22.

//獲取參數的方法

//url為穿過來的鏈接,id為參數名

function GetParam(url, id) {

url =
url+ "";
regstr = "/(\?|\&)" + id + "=([^\&]+)/";
reg = eval(regstr);//eval可以將 regstr字符串轉換為 正則表達式
result =
url.match(reg);//匹配的結果是:result[0]=?sid=22
result[1]=sid
result[2]=22。所以下面我們返回result[2]

if (result && result[2]) {
return result[2];
}
}

2.獲取所有參數保存到數組

var url = "http://127.0.0.1/e/action/ShowInfo.php?classid=9&id=2";
function parse_url(_url){
 var pattern = /(w+)=(w+)/ig;
 var parames = {};
 url.replace(pattern, function(a, b, c){
  parames[b] = c;
 });
 return parames;
}
var parames = parse_url(url);
alert(parames['classid'] + ", " + parames['id']);
</script>

解析:
這是最關鍵的.當replace匹配到classid=9時.那么就用執行function(a,b,c);其中a的值
為:classid=9,b的值為classid,c的值為9;(這是反向引用.因為在定義正則表達式的時候有
兩個子匹配.)
然后將數組的key為classid的值賦為9;然后完成.
再繼續匹配到id=2;此時執行function(a,b,c);其中a的值為:id=2,b的值為id,c的值為2;然
后將數組的key為id的值賦為2.

調用:
var parames = parse_url(url);
alert(parames['classid'] + ", " + parames['id']);//最后打印.根據key值來打印數組對

應的值

總結

以上是生活随笔為你收集整理的正则-匹配获取url参数的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。