Мне нужно создать регулярное выражение для политики паролей.
- Пароль должен содержать не менее 6 символов.
- Пароль должен содержать хотя бы одну строчную букву.
- Пароль должен содержать хотя бы одну букву.
- Пароль должен содержать хотя бы один специальный символ.
- Пробелы в середине пароля разрешены, но не в начале и в конце (=> функция обрезки).
Мой промежуточный результат - это выражение:
^ (? =. * [A-Z]) (? =. * [A-z]) (? =. * \ W). {6,} $
Работает для первых четырех критериев, но не для функции обрезки.
Я попробовал что-то вроде этого:
(? = \ S [\ s] *) (? =. * [A-Z]) (? =. * [A-z]) (? =. * \ W). {6,} $
но это не работает, потому что пробелы в конце все еще возможны.
Может ли кто-нибудь помочь мне расширить мой результат, чтобы регулярное выражение позволяло использовать пробелы в середине пароля, но не в начале и не в конце?