Я собирался написать регулярное выражение, которое будет соответствовать, только если строка содержит хотя бы n различных классов символов.Я собирался использовать это, чтобы заставить своих пользователей создавать надежные пароли, и хотел проверить, содержит ли пароль хотя бы 3 из следующих элементов:
- Символы
- Прописные символы
- Числа
- Специальные символы
Написание регулярного выражения, которое соответствует, если присутствуют все эти классы, тривиально, используя lookaheads.Тем не менее, я не могу обернуть голову вокруг "по крайней мере 3" части.Возможно ли это (в хорошем, компактном выражении) или мне нужно создать выражение монстра?