1 つの大文字、1 つの整数、1 つの後続の記号 (@、#、$、%、^、&、+、=) および小さな文字で構成される Java でのパスワード検証用の正規表現のコードを教えてください。
私はこれを、さまざまな個別の正規表現と1つの組み合わせた正規表現で試してきました。
実際、私はすでに JavaScript のすべての条件を評価する単一の正規表現を持っています。Java バックエンドでは使用できません。エスケープしてみました\
。それも機能していません。
これが私のコードです:
Pattern pattern = Pattern.compile("/.*(?=.{6,})(?=.*\\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[@#$%^&+=]).*$/");
Matcher matcher = pattern.matcher("Aa@1");
if(matcher.matches()){
System.out.println("Matched");
}
else{
System.out.println("No mat");
}
元の JavaScript 正規表現は
/.*(?=.{6,})(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[@#$%^&+=]).*$/
その中で\d
、エスケープ文字が原因でエラーが発生しました。だから、私\
はJavaバージョンでその前に別のものを追加しました.
何が問題なのか理解できません。
前もって感謝します。