Преобразование в прег
Я полный новичок, когда дело доходит до регулярных выражений. Может ли кто-нибудь помочь мне преобразовать следующее выражение в preg?
ereg('[a-zA-Z0-9]+[[:punct:]]+', $password)
Объяснение, чтобы сопровождать любое решение было бы особенно полезно!!!!
2 ответа
Чтобы ответить на реальный вопрос, вам нужно структурировать свой код следующим образом:
if ( preg_match( '/[a-z]+/', $password ) &&
preg_match( '/[A-Z]+/', $password ) &&
preg_match( '/[0-9]+/', $password ) &&
preg_match( '/[[:punct:]]+/', $password ) ) ...
Если вы хотите, чтобы в вашем пароле присутствовали хотя бы одна строчная буква, хотя бы одна заглавная буква, хотя бы одна цифра и хотя бы один знак препинания.
Другие вопросы, которые вы должны прочитать:
preg_match('/[a-zA-Z0-9]+[[:punct:]]+/', $password)
Вы просто помещаете / в начале и / в конце. После / в конце вы можете поставить несколько разных вариантов:
я - без учета регистра
g - сделать глобальный поиск
Для получения дополнительной информации в прекрасном мире регулярных выражений в PHP, проверьте это: