2017-03-21 30 views
1

我想制定一個正則表達式來匹配URL的。正則表達式的分頁URL

我現在有像這樣

walks/category/catname

walks/category/catname/P12

walks/category/catname/P24

URL結構,我希望能夠讓他們落得像這樣

與它們匹配和替換它們

walks/catname

walks/catname/p2

walks/catname/p3

(其中catname是一個變量)

到目前爲止,我不得不

/walks/category/(.*)/walks/$1

這似乎對結果的第一頁的工作,但顯然不是分頁的。

我有點卡住,所以任何指針將非常感激。

謝謝!

+0

這不是明顯的拼版層不包含在你的''正則表達式位(*)。它應該是,如果你正在發送分頁的URL,比如'/ walks/category/catname/P13'到正則表達式''/ walks/category /(.*)'中。如果你不是,並且只發送像'/ walks/category/catname /'這樣的基本URL,那麼這些頁面甚至不會在那裏與regex匹配,所以你不能期望改變'/ walks/category/catname /'to'/ walks/catname/p10',因爲正則表達式在給定URL的任何地方都看不到任何關於'/ p10'的東西。如果完整分頁的URL **正被傳遞給正則表達式,它應該匹配。 – Bango

+0

那就是我的想法,那就是發生了什麼。只是基本的URL。不知道如何包含分頁變量。 – shorn

+0

在這種情況下,我建議提出另一個更準確的問題。現在,這是一個如何將分頁URL傳遞到正則表達式的問題,假設仍然是您想要使用的方法。 – Bango

回答

0

有點像

查找walks/.*?(/catname.*)
更換walks$1

構建正則表達式插入catname變量
VAR正則表達式= 'walks/.*?(/' + vCatname + '.*)'

前:

walks/category/catname 

walks/category/catname/P12 

walks/category/catname/P24 

後:

walks/catname 

walks/catname/P12 

walks/catname/P24 
+0

catname是一個變化的變量。 – Bango

+1

@Bango - 爲變量添加註釋。 – sln

+0

感謝您的迴應,我仍然不確定發生了什麼。分頁編號也需要改變。這件事發生在這裏,對吧? – shorn