-1

私はこの正規表現を持っています

^([^>]+)/([^>]+)/([^>]+)/([^>]+)/([^>]+)/$

次のような一般的な URL に一致します。

www.site.com/complete/path/for/this/page/

問題は、私が行くと

www.site.com/complete/path/for/this/page

私の正規表現はスラッシュで終わる場合にのみその文字列と一致するため、404 エラーが発生します。

スラッシュで終わるかどうかに関係なく、文字列と一致するように正規表現に指示するにはどうすればよいですか?

2つのケースに一致するようにルールを複製することを考えましたが、それは非常に醜い方法だと思います.もっと良い方法があると確信しています.

4

2 に答える 2

3

スラッシュをオプションにする

^([^>]+)/([^>]+)/([^>]+)/([^>]+)/([^>]+)/?$

の後に a?を付けます。

?、前の要素を 0 回または 1 回繰り返す量指定子であるため、省略可能になります。

于 2013-04-29T09:55:07.420 に答える