Зачем Вы облегчаете работу взломщикам своими ограничениями на пароль?
Ну ладно минимальная длина, хотя 3 символа далеко не безопасный пароль, надо хотя бы 6.
Но вот максимальная длина зачем ограничена? Если мой пароль из 21 символа, то что мне делать? Нет, конечно менеджер паролей поможет мне сгенерить и запомнить что-то безопасное, но менеджер паролей к сожалению есть не везде и не всегда, и вот уже Вы подвели меня к придумыванию вариации, которую я не смогу запомнить, а значит буду совершать кучу небезопасных действий, вроде записывания пароля куда-либо. Аналогично с другими ограничениями вроде "Должен содержать латиницу + цифры (минимум 1 цифру)" - поверьте, в 99% случаях цифра будет ровно одна, в начале или в конце пароля, вы резко сократили время для банального брутфорса.
сначала матчить допустимые символы и их количество /^[a-zA-Z0-9]{3,20}$/
после матчить наличие более одной цифры (но не все 20) /[0-9]{1,19}/
если эти два условия выполняются, значит :)
если нет :(