0

次のルールを使用して、パスワード フィールドの検証チェック用の正規表現を作成しました。

  1. 少なくとも小文字
  2. 少なくとも大文字
  3. 少なくとも特殊文字
  4. 少なくとも数字

正規表現:/^(?=.*[a-z])(?=.*[A-Z])(?=.*[!@#$&*])(?=.*[0-9]).{8,}$/

どんな助けでも大歓迎です。

4

2 に答える 2

1

最も簡単な回避策は、先読みをまったく使用しないことです。あなたの場合、すべての先読みは文字列の先頭から始まるため( により^)、先読みを個別にチェックすることと同じです。さらに削除.*して、固定されていない一致に進むことができます.

if (/[a-z]/.test(str) &&
    /[A-Z]/.test(str) &&
    /[!@#$&*]/.test(str) &&
    /[0-9]/.test(str) &&
    str.length() >= 8) {

    // All conditions met
}
于 2013-03-13T09:33:40.727 に答える