のために働いていない私は(唯一の違いは?
前の最後のスラッシュのです)、私は単一のパターン(正規表現)を作成する必要があり、そのため、同じURLの2形式があります。したがって、同じパターンでURLの両方のバリエーションを処理できます。パターンは、書き換えルール
products/dispenser/hand-towel?gclid=CPDv
とproducts/dispenser/hand-towel/?gclid=CPDv
私は第一URLのために正常に動作しますが第二URLのために働いていないされ、パターンの下に使用しようとしています。
^products/([^/]+)/([^/]+)/?$
私はパターン以下のいくつかのより多くを試みたが、成功を取得できませんでした。私は第一のURLから取得しています私は、出力の下に取得したいと同じパターンを使用することにより
^products/([^/]+)/([^/]+/.*| /?$)
^products/([^/]+)/([^/]+)(^/?)$
^products/([^/]+)/([^/]+)/?$
。
{R:1} Dispenser
{R:2} hand-towel?gclid=CPDv
と第二URLから私は、出力
{R:1} Dispenser
{R:2} hand-towel/?gclid=CPDv
私は、URL
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
の6種類を持って
だから、上記のすべてのURLが同一ページに上陸しますが、最初の3つのURLはその後、ヒットされる場合、私はR1とR2としてdispenser
とHand-towel
を必要とし、第四、第五及び第六のURLは、私にヒットされた場合R1、R2およびR3としてdispenser
、hand-towel
とhand-towel-roll
を必要としています。
^products/([^/]+)/([^/]+)/?$
パターンのみURL 4,5及び6のためのR3パラメータを識別することができなくなり、このパターンとして1,2 URLのであるが。
一方、^products\/([^\/]+)\/([^\/]+)\/(.+)$
のパターンは第1のURLでは機能しません。
@Fallenヒーロー:あなたの努力に感謝します。 まだ出力の一部が欠落していますので、より明確にするために質問を更新しました。を参照してください。 – user3305540