正規表現に関する私の経験は限られています。私は否定と否定的な先読みなどのさまざまなチュートリアルや投稿を読んできましたが、
パスワードの複雑さのためにASP.NET MVC3
に属性を作成しようとしています。検証の一部には、最小限の繰り返し文字数が含まれます。現在のプロジェクトでは限界は3ですが、私はそれを一般化したいと思います。"4つ以上の繰り返し文字が含まれていません"
最初は、@"(.)\1{3,}"
を使用して、4つ以上の繰り返し文字をテストし、その結果を否定しました。 ModelClientValidationRegexRule
オブジェクトを作成する必要があるため、今はできません。肯定的な結果しか得られません。したがって、否定は正規表現自体の内部で行われなければならない。否定的な先読みを使用しようとするたびに失敗します。 @".*(?!(.)\1{3,})"
。
アイデア?
ありがとうございます。それはうまくいかないが、それは非常に近いようだ。私は、バット(非常に正規表現で経験の少ない)からそれを理解していないが、私は近くに見て、理解し、必要に応じて変更します。現在のところ、5文字以上の文字が4になると失敗します。私はそれを動作させるために自分で作業しています。 – jmcilhinney
興味深いことに、単純なケースではここでうまくいくようです。あなたが何が間違っているのか分かったときにポストバックをしてください、私は興味があります:)とにかく、助けてうれしいです。 – abesto