正則獲取URL引數

2021-09-17 21:32:23 字數 1864 閱讀 8561

function

geturlparams

(name)

window.location =

"";var name =

geturlparams

("name");

//elephant

var age =

geturlparams

("age");

//25

var *** =

geturlparams

("***");

//male

首先理解定義的正規表示式,(^|&)意思是從頭開始匹配字元&,=([^&]*)意思是匹配=後面零個或多個不是&的字元,直至碰到第乙個&為止,(&|$)意思就是匹配最後乙個&,在正規表示式中,增加乙個()代表著匹配陣列中增加乙個值, 因此**中的正則匹配後陣列中應包含4個值, 在geturlparams("name")函式中,此時r獲取到的陣列應該是["name=elephant&", "", "elephant", "&"]

**中window.location.search意思是取window.location中 『?『後面的值包括』?』,因此所得到的值是"?name=elephant&age=25&***=male"

substr()這個函式的作用是擷取字串,在**中window.location.search.surstr(1)意思就是擷取第乙個字元後面的字串,所得到的值即是"name=elephant&age=25&***=male"

unescape這個函式的作用是解碼escape編碼後的字串

function

parse_url

(_url)

;//定義陣列

url.

replace

(pattern,

function

(a, b, c));

return parames;

//返回這個陣列.

}var url =

""var params =

parse_url

(url)

;// ["name=elephant", "age=25", "***=male"]

replace匹配到name=elephant時.那麼就用執行function(a,b,c);其中a的值為:name=elephant,b的值為name,c的值為elephant;(這是反向引用.因為在定義正規表示式的時候有兩個子匹配.),然後將陣列的keyname的值賦為elephant;然後完成.

再繼續匹配到age=25;此時執行function(a,b,c);其中a的值為:age=25,b的值為age,c的值為25;然後將陣列的key為id的值賦為25.

JS正則獲取url的引數

獲取url上的引數 假如url是這樣的 要取得引數a的值11 和 b 的值 2。c 3首先要知道url帶的引數都在?後面的查詢串,有兩種方法可以獲取 1.location.search 直接獲取查詢串 location.search a 11 b c 3 2.location.href 和 spli...

獲取url引數

想要獲取url的引數,只要記住 url的引數是存在window.location.search中的,然後再根據引數的個數等特點用不同的方式擷取,或者匹配即可。方法一 正則法 function getquerystring name return null 呼叫 注 記得打引號 getquerystr...

獲取url引數

想要獲取url的引數,只要記住 url的引數是存在window.location.search中的,然後再根據引數的個數等特點用不同的方式擷取,或者匹配即可。方法一 正則法 function getquerystring name return null 呼叫 注 記得打引號 getquerystr...