Я пытаюсь написать регулярное выражение для проверки пароля для данного правила.Regex для комбинации заданных правил
Пароли должна быть не менее 8 символов в длине и содержат по крайней мере 3 из следующих 4 типов символов:
- строчных букв (т.е. AZ)
- заглавных букв (например, AZ)
- номера (т.е. 0-9)
- специальные символы (например,! @ # $ & *)
Я прошел this обсуждение и нашел this действительно отличный ответ там.
Сейчас я пытаюсь написать регулярное выражение для указанных требований, и я пришел с решением, как этот
^(?=.*[A-Z])(?=.*[[email protected]#$&*])(?=.*[0-9])(?=.*[a-z]).{8,}|
(?=.*[[email protected]#$&*])(?=.*[0-9])(?=.*[a-z]).{8,}|
(?=.*[A-Z])(?=.*[0-9])(?=.*[a-z]).{8,}|
(?=.*[A-Z])(?=.*[[email protected]#$&*])(?=.*[a-z]).{8,}|
(?=.*[A-Z])(?=.*[[email protected]#$&*])(?=.*[0-9]).{8,}$
и она работает идеально видеть rubular, но я хочу, чтобы оптимизировать эти регулярные выражения, и я Не уверен. Есть ли способ упростить это. Любое предложение будет оценено по достоинству. Большое спасибо
Оптимизация этого регулярного выражения означает его разделение на несколько меньших регулярных выражений. Они будут более читабельными и удобными. –
@ WiktorStribiżew Я буду очень признателен Если вы можете предоставить любую полезную ссылку здесь, спасибо –
Если регулярное выражение работает нормально, возможно, лучше задать этот вопрос будет [codereview.se]. –