1

のモジュールPHP PCREで書き換えられた uri に一致する正規表現を探しています。uri は次のとおりです。Apachemod_rewrite

/param1/param2/param3/param4

ウリのルール

  • 少なくとも 1 つ含まれている必要があります/
  • パラメータには、文字、数字、-および_;のみを許可する必要があります。
  • 最初の 2 つのルールのインスタンスが 0 個以上存在する必要があります。
4

2 に答える 2

2
/\/[a-zA-Z0-9_\-\/]+$/

私はそれがで始まる必要があり、/このようなものは一致しないはずだと思います/param1/param2/param3/param4*

于 2012-12-04T07:34:30.510 に答える
1

どうですか:

if (preg_match("~^(?:/[\w-]+)+/?$~", $string)) {
    # do stuff
}

説明:

The regular expression:

(?-imsx:^(?:/[\w-]+)+/?$)

matches as follows:

NODE                     EXPLANATION
----------------------------------------------------------------------
(?-imsx:                 group, but do not capture (case-sensitive)
                         (with ^ and $ matching normally) (with . not
                         matching \n) (matching whitespace and #
                         normally):
----------------------------------------------------------------------
  ^                        the beginning of the string
----------------------------------------------------------------------
  (?:                      group, but do not capture (1 or more times
                           (matching the most amount possible)):
----------------------------------------------------------------------
    /                        '/'
----------------------------------------------------------------------
    [\w-]+                   any character of: word characters (a-z,
                             A-Z, 0-9, _), '-' (1 or more times
                             (matching the most amount possible))
----------------------------------------------------------------------
  )+                       end of grouping
----------------------------------------------------------------------
  /?                       '/' (optional (matching the most amount
                           possible))
----------------------------------------------------------------------
  $                        before an optional \n, and the end of the
                           string
----------------------------------------------------------------------
)                        end of grouping
----------------------------------------------------------------------
于 2012-12-04T10:24:10.543 に答える