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 шт):

Автор решения: lijil

вот так вот /^[A-z\s][A-z\d\s]+$/

→ Ссылка
Автор решения: splash58
^(?!.*(.)\1{3,})(?=.*[a-z])[a-z\d](\s*[a-z\d])+$

Первая группа ^(?!.*(.)\1{3,}) проверяет что нет 4 или больше повторов одного символа подряд

Вторая (?=.*[a-z]) - что присутствует буква

Подробнее

→ Ссылка