Я пытаюсь написать регулярное выражение для имени пользователя, которое соответствует следующим критериям...
Должно быть от 6 до 16 символов, любые 4 из которых должны быть буквами (хотя и не обязательно последовательными). Может также содержать буквы, цифры, тире и подчеркивание.
Таким образом, _1Bobby1_
и -Bo-By19-
будут совпадать, а _-bo-_
и -123-456_
— нет.
Я пробовал:
^(?=.*[a-zA-Z].{4})([a-zA-Z0-9_-]{6,16})$
Но это, похоже, не работает, я искал в Интернете и не мог найти ничего, что работало бы, и использовал Regexper для визуализации выражения и попытки построить его с нуля.
Любые указатели будут очень признательны.