Here is what I would like to do with:
(?=.*\d)(?=.*[az])(?=.*[AZ])(?!.*[!#\$%&\?])^\D.{7}
Please note that .* After each waiting period was redundant.
(?!...) is a negative outlook to make sure there are no special characters.
^\D requires the first character to be unsigned. Then I just require 7 characters after that, because the end is not executed.
But why exclude special characters from passwords? The opposite is usually recommended.
user1919238
source share