2016-07-14 35 views
0

之間匹配任何帶有2位數字的網址我完全是regex的新手,但我擁有大量的網址,它們遵循相同的基本形式,我需要重定向到特定的網址。我試圖與 '固定字符串',然後 '1999之間的任意數字',那麼/在/ page =之後和/

../section/subsection/page=xx/ to redirect to ../new_section/new_subsection/

其中

開頭總是../section/subsection/page=

xx1999之間的數字

,並用/

回答

0

如果你只需要正數,而不是0,然後使用[1-9]\d{0,2}

\.\.\/section\/subsection\/page=[1-9]\d{0,2}\/ 

https://regex101.com/r/aM1dN1/1

+0

完美 - 這正是我所尋找的。 –

0

正則表達式\d{1,3}結束會給你從0到999 [1-9]\d{0,2}所有號碼匹配會給你所有號碼從1匹配999

那麼,對於您的網址:.*/page=[1-9]\d{0,2}/.*/page=[1-9]{1,3}/

+1

謝謝。我需要一個特定的字符串之前和之後的數字,但您提供的方法來匹配1-999之間的任何數字是偉大的 –

0

這將匹配任何包含在url一個page=###字符串類型和攝像組會給你的頁碼。

.*page=([1-9]{1,3})

https://regex101.com/r/xZ0eO8/2

+0

你regex會匹配0還是 – mrserfr

+0

真的嗎?我認爲它匹配1-9的第一個數字,然後可以選擇其他兩個數字。 –

+0

@DanWood我的正則表達式將匹配任何包含'page ='的URL,然後捕獲組將採用任何以下數字,長度介於1到3個數字之間 –