0

MVCWebサイトで使用する「 Classification 」という名前のビューモデルがあります。

正規表現属性を使用して、このビューモデルの「説明」という名前のプロパティを検証しようとしています。

この「説明」プロパティの要件は次のとおりです。

  • 次の文字のみを許可します。
    • 文字、数字、スペース、および次の文字のいずれか_-+()/ \

したがって、これらの値は検証に合格する必要があります。

  • テスト
  • test1
  • test1_
  • t(e_ s)t1 i / s \ good +-

そして、これらは失敗するはずです:

  • t、test
  • t.test
  • テスト!
  • te!@#$%st

これは私がこれまでに持っている正規表現です:

^[a-zA-Z0-9 _+-\/\\\(\)]+$

上記のすべての期待値は合格ですが、失敗すべきリストの最初の2つの値(コンマとピリオドの値)も合格しています。これは間違っています!! これは非常に苛立たしいことです。

正規表現で見逃したことを教えてください。

よろしくお願いします、

M

4

1 に答える 1

4

文字クラスで「-」ダッシュをエスケープする必要があります

^[a-zA-Z0-9 _+\-\/\\\(\)]+$

それがなければ、次のようになります。

「+」から「/」までの文字 «+-/»**

于 2012-07-06T18:01:53.777 に答える