-1

正規表現を使用して最小 5 文字を含むパスワードを検証しているときに、いくつかの問題に直面しました。

以下のように非常に単純な正規表現を使用しています。

String PASSWORD_PATTERN_MIN_CHARS = "(?=.*[a-z|A-Z]{5,}).{8,}";

正規表現によると、パスワードには最低 5 文字が含まれている必要があり、最低 8 文字がパスワードの長さになります。

"aasaT124"文字列に対しては正常に機能しています。しかし、失敗し"aa12sa4T"ます。

明らかに違いは、文字が連続している場合にのみ正規表現が一致することです。

検証が失敗した文字列には、最小 5 文字も含まれています。

4

3 に答える 3