0

javascript を使用してパスワード フィールドを次の要件と一致させる必要があります。

  1. 少なくとも 1 つの特殊文字を含む英数字にする必要があります。
  2. スペースは許可されません
  3. 最小 10 文字、最大 20 文字にする必要があります。
  4. char を 2 回以上繰り返さない。
  5. ~,'.:;^| 許可されていません

正規表現の
var password = /^(?=. [0-9])(?=. [!@#$%^& ])[a-zA-Z0-9!@#$%^& ]{ 10,20}$/; どうすればこれを解決できますか?

4

4 に答える 4

1

これは必要な正規表現かもしれません

^(?=.*[!@#$%^&])(?!.*(.).*\1.*\1)[A-Za-z\d!@#$%^&|]{10,20}$

(?=.*[!@#$%^&])リストされた文字が少なくとも 1 回出現することを保証します。

(?!.*(.).*\1.*\1)文字が 2 回以上繰り返されないようにします。

[A-Za-z\d!@#$%^&|]{10,20}文字クラスの 10 ~ 20 個の文字に一致します。

于 2013-04-02T09:45:16.060 に答える
0

要件の5つのものに基づいて、これは必要な正確なパターンです

^(?=.*[!@#$%^&])(?!.*(.).*\1.*\1)[^\s~,'.:;^|]{10,20}$
于 2013-04-02T10:20:40.897 に答える