我有2種形式的相同的URL(只有差異是?
之前的最後一個斜槓),並且我需要創建單個模式(正則表達式)。所以相同的模式可以處理這兩種URL的變體。模式不適用於重寫規則
products/dispenser/hand-towel?gclid=CPDv
和products/dispenser/hand-towel/?gclid=CPDv
我嘗試使用下面的圖案,這是工作的罰款,第一次URL,但不工作的第二個URL。
^products/([^/]+)/([^/]+)/?$
我想更多一些下面的模式,但沒有獲得成功。
^products/([^/]+)/([^/]+/.*| /?$)
^products/([^/]+)/([^/]+)(^/?)$
^products/([^/]+)/([^/]+)/?$
通過使用相同的模式我想下面的輸出,這我穿過第一URL獲得。
{R:1} Dispenser
{R:2} hand-towel?gclid=CPDv
,並從第二URL我需要得到下面的輸出
{R:1} Dispenser
{R:2} hand-towel/?gclid=CPDv
我有6種網址
products/dispenser/hand-towel?gclid=CPDv
products/dispenser/hand-towel/?gclid=CPDv
products/dispenser/hand-towel
products/dispenser/hand-towel/hand-roll?gclid=CPDv
products/dispenser/hand-towel/hand-roll/?gclid=CPDv
products/dispenser/hand-towel/hand-roll
的
因此,所有上面這些URL將登陸同一個頁面上,但如果前3個網址將被打,然後我需要dispenser
和Hand-towel
爲R1和R2,如果第4,第5和第6網址將被然後打我需要dispenser
,hand-towel
和hand-towel-roll
作爲R1,R2和R3。
^products/([^/]+)/([^/]+)/?$
^products/([^/]+)/([^/]+)/?$
模式僅適用於1和2個URL,因爲此模式無法識別URL 4,5和R3的R3參數。
而^products\/([^\/]+)\/([^\/]+)\/(.+)$
模式不適用於第1個網址。
@Fallen英雄:謝謝你的努力。 但輸出中仍缺少一些部分,我更新了我的問題以獲得更好的說明,請參閱。 – user3305540