0

URL を書き換えるための正規表現パターンに関するヘルプを探しています。私のURL構造は次のとおりです。

http://domain.com/[username]/[token]/[userid]/

データ型は次のとおりです。

  • ユーザー名 = 英数字
  • トークン = 英数字
  • ユーザー ID = 数値

データの例:

http://domain.com/john1975/aBc123/123456789/

正規表現を使用して、各データの参照を取得しようとしているので、次のように書き換えることができます。

index.asp?username={R:1}&token={R:2}&userid={R:3}

また、正規表現は貪欲になりすぎないように注意してください。そのため、次のようなファイルに引き続きアクセスできます。

http://domain.com/about.asp
http://domain.com/images/logo.png

私が試した正規表現は次のとおりです。

^[0-9a-z]+/[0-9a-z]+/[0-9]+$

これは私の例の URL と一致しません。

4

1 に答える 1

2

末尾のスラッシュがありません。正規表現は次のとおりです。

^([0-9a-z]+)/([0-9a-z]+)/([0-9]+)/$

大文字と小文字を区別しないというフラグを立てていると思います。そうでない場合は、必要です

^([0-9a-zA-Z]+)/([0-9a-zA-Z]+)/([0-9]+)/$

また、後方参照を呼び出すことができるように括弧も必要です。これも間違っています。式全体の一致である 0 ではなく、1、2、および 3 で一致させたいのです。彼らは読むべきです:

index.asp?username={R:1}&token={R:2}&userid={R:3}
于 2013-09-27T10:02:49.157 に答える