PHP регулярное выражение пароля

268
05 марта 2017, 09:10

Как составить регулярное выражение для проверки пароля который должен состоять из 0-9 a-z A-Z и иметь как минимум одну цифру, одну маленькую и одну большую букву?

Answer 1

Вот один из вариантов английской версии стека ^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[a-zA-Z\d]{12,25}$

(?=.*[a-z]) - маленькая буква
(?=.*[A-Z]) - большая
(?=.*\d) - число
[a-zA-Z\d] - всё остальное буквы и цифры
{12,25} - от 12 до 25

Демо

Answer 2
^\S*(?=\S{12,25})(?=\S*[a-z])(?=\S*[A-Z])(?=\S*[\d])\S*$
  • (?=\S{12,25}): задает лимит паролю 12-25 символов
  • (?=\S*[a-z]): содержит хотя бы одну маленькую букву
  • (?=\S*[A-Z]): содержит хотя бы одну большую букву
  • (?=\S*[\d]): и хотя бы одну цифру

Если понимаете английский есть хорошая статья и очень интересные обсуждения по этому поводу, собственно там и была эта регулярка, работает хорошо, сам пользовался.

Источник: https://www.zorched.net/2009/05/08/password-strength-validation-with-regular-expressions/

READ ALSO
Где найти генератор menu в Laravel?

Где найти генератор menu в Laravel?

Добрый вечер господа, проблема следующего родаУстановил админку и пытаюсь вывести меню во view

314
yii генератор паролей

yii генератор паролей

Добрый день

327
Ошибка при выполнение запроса VK API

Ошибка при выполнение запроса VK API

Добрый вечер! Не понимаю, в чем может быть ошибка при выполнение запроса на редактирование объявления через API VKВыдает вот такую вот ошибку:

323
php функция mail

php функция mail

Осваиваю php, работаю на localhost (Denver) Пытаюсь отправить почту:

295