2011-02-24 93 views
0

我試圖匹配url的變量。如果我直接在匹配方法中使用表達式,這工作正常。不過,如果表達式是在一個字符串中,我有問題得到它的工作。從值字符串jQuery匹配

var match ='/(page_art_list = \ d +)/';

匹配包含值..

var pattern = "/("+paramName+"=\d+)/"; 
var match = this.href.match(pattern); 

比賽是空

我有雙重檢查,這兩個例子產生相同的字符串。

有什麼想法?

此致敬禮。 AsbjørnMorell

+0

請參閱http://stackoverflow.com/questions/901115/get-querystring-values-with-jquery – rsp 2011-02-24 12:40:39

回答

2

/something/語法適用於正則表達式文字。對於字符串,使用RegExp構造:

var pattern = new RegExp('(' + paramName + '=\\d+)'); 

注雙反斜線\\。這是因爲在字符串中,\是一個轉義字符,所以您需要兩個才能表示單個正則表達式反斜槓。

+0

謝謝:)這讓我感到困惑.. – atmorell 2011-02-24 14:50:36