Solution Review: Password Checker
Solution to RegEx exercise in JavaScript
We'll cover the following
Solution
The solution requires a series of RegExes to test each condition so that when all conditions pass, we return True
or otherwise False
. Use the test
method to conveniently check if a string matches with a certain RegEx.
For each condition, use the following RegExes.
- Length:
.{6,}
(Minimum 6 characters) - Uppercase letter:
.*[A-Z]
(A-Z) - Lowercase letter:
.*[a-z]
(a-z) - Numeric digit:
.*\d
(0-9) - Special Character:
.*[\W]
(any character other than {0-9, a-z, A-Z})
Then use a series of lookaheads to join these RegExes together after anchoring them to the start and end of the string, using ^
and $
respectively.
Final RegEx:
/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[\W]).{6,}$/
Looking at the above RegEx, use a series of lookaheads (?=...)
to check for each condition after the start of the string (^...
). Leave the last condition out of the lookahead .{6,}
and follow it by the end of the string positional quantifier $
.
Look below to see the code in action.
Get hands-on with 1400+ tech skills courses.