REGEX Валидация строки с пробелами и литерами
Не могу написать регулярное выражение что бы полностью провалидировать входящую строку согласно требованиям:
Латиница верхний нижний регистр ([A-Za-z]) Цифры, Пробел, Минимум -2 позиции(не считая пробелов). Не разрешается только цифры. Необходима хотя бы одна буква. Только буквы - разрешается Пример разрешения : асs, a a, a1, a 1, asas asas12 Не разрешается: 1111, q, qqqq@#, @@@aaaa, asas1212$
Максимально продвинулся до: ^\s*([a-z\d]\s*){2,}$ Но не могу регулировать количество символов. Спасибо
Ответы (2 шт):
Автор решения: splash58
→ Ссылка
^(?!.*(.)\1{3,})(?=.*[a-z])[a-z\d](\s*[a-z\d])+$
Первая группа ^(?!.*(.)\1{3,}) проверяет что нет 4 или больше повторов одного символа подряд
Вторая (?=.*[a-z]) - что присутствует буква