2012-11-29 38 views
1

我需要匹配URL中的/page/之後的任何數字。爲什麼我的正則表達式不工作?

實例網址:

http://example.com/something/page/2/ 

我想要什麼了它:

2 

我寫了這一點,但由於某種原因,我得到空。

/page/(\d) 

我錯過了什麼嗎?當我在this site上測試時,我編寫的正則表達式工作正常,但我無法在js中使用它。

當我運行此:

console.log(url); 
var mr = url.match('/page/(\d)'); 
console.log(mr); 

我得到:

http://example.com/something/page/2/ theme.js:32 
null 

任何想法?

+0

較大應當'變種MR = url.match( '/頁/(\\ d)');'(或一個' RegExp'文字,正如答案中所解釋的)。 –

回答

2

您可以使用

var nb = url.match(/\/page\/(\d)/)[1]; 

當您在正則表達式有/,它需要進行轉義。

請注意,我更喜歡使用/someregexp/表示法,因爲每次使用它時不需要計算文字正則表達式。

+1

這麼快...我要回去工作 – Joe

+0

完美,謝謝! :) – qwerty

3

應該是

/\/page\/(\d+)/ 

爲了匹配頁面超過9

+0

哦,你注意到了!謝謝! – qwerty

相關問題