正規表現の経験は限られており、否定や否定の先読みなどに関するさまざまなチュートリアルや投稿を読んでいますが、私の状況に完全に一致するものはないようです。 パスワードを複雑
にするために、で属性を作成しようとしています。ASP.NET MVC3
検証の一部には、最小数の繰り返し文字が含まれます。現在のプロジェクトでは制限は3ですが、一般化したいと思います。
最初は、@"(.)\1{3,}"
4つ以上の繰り返し文字をテストし、その結果を否定するために使用していました。オブジェクトを作成する必要があるため、今はそれを行うことができません。ModelClientValidationRegexRule
オブジェクトは、肯定的な結果でのみ機能します。そのため、否定は正規表現自体の内部で実行する必要があります。ネガティブ先読みを使用しようとしたすべての方法が失敗します@".*(?!(.)\1{3,})"
。
何か案は?