復制代碼代碼如下:
var url = "http://127.0.0.1/e/action/ShowInfo.php?classid=9&id=2";//定義變量
function parse_url(_url){ //定義函數(shù)
var pattern = /(/w+)=(/w+)/ig;//定義正則表達式
var parames = {};//定義數(shù)組
url.replace(pattern, function(a, b, c){parames[b] = c;});
/*這是最關鍵的.當replace匹配到classid=9時.那么就用執(zhí)行function(a,b,c);其中a的值為:classid=9,b的值為classid,c的值為9;(這是反向引用.因為在定義 正則表達式的時候有兩個子匹配.)然后將數(shù)組的key為classid的值賦為9;然后完成.再繼續(xù)匹配到id=2;此時執(zhí)行function(a,b,c);其中a的值為:id=2,b的值為id,c的值為2;然后將數(shù)組的key為id的值賦為2.*/
return parames;//返回這個數(shù)組.
}
var parames = parse_url(url);
alert(parames['classid'] + ", " + parames['id']);//最后打印.根據(jù)key值來打印數(shù)組對應的值