2017-02-27 5 views
-2

Ich brauche eine Regex für die Passwort-Validierung mit JavaScript, die mindestens ein numerisches und ein Sonderzeichen-Symbol in (* ^% $ # @) und mehr als einem Alpha-Zeichen enthalten sollte. Momentan verwende ich den folgenden Codeausschnitt, der nicht funktioniert:Regex für Passwort-Validierung mit JavaScript

/^(?=(.*[a-zA-Z]{2}))(?=.*\d)(?=.*(\*))(?=.*(^))(?=.*(%))(?=.*(#))(?=.*($))(?=.*(@))$/ 

Kann mir jemand helfen?

+1

definieren – Li357

+0

https://stormpath.com/blog/5-myths-password-security#1-myth-complexity-trumps-length – Quentin

+0

Willkommen auf Stack-Überlauf "funktioniert nicht"! Bitte lies [ask] und erstelle ein [mcve]. –

Antwort

0

Line up alle Ihre Anforderungen als Behauptungen, dann passen die Zeichenfolge
wenn die Behauptungen zufrieden sind.
(?i)^(?=(?:.*[a-z]){2})(?=.*\d)(?=.*[*^%$#@]).+$

(?i)       # In line modifier - case insensitive 
^        # BOS 
(?=       # Assert - at least 2 alpha's 
     (?: .* [a-z]){2} 
) 
(?= .* \d)     # Assert - at least 1 numeric 
(?= .* [*^%$#@])    # Assert - at least 1 special 

.+       # Match all here 
$        # EOS 
+0

Danke @sln! Es funktionierte. Vielen Dank für Ihre Kommentare. :) –

+0

@HarshitGupta - Gern geschehen! Vergiss nicht, die Antwort zu akzeptieren, wenn es dein Problem gelöst hat. – sln