JavaScript регулярное выражение для буквенно-цифровой строки длиной 3-5 символов

Мне нужно регулярное выражение для проверки буквенно-цифровой строки длиной 3-5 символов. Я попытался найти регулярное выражение, найденное в Интернете, но он даже не поймал буквенные символы правильно.

var myRegxp = /^([a-zA-Z0-9_-]+)$/;
if(myRegxp.test(value) == false)
{
    return false;
}

Ответы

Ответ 1

добавьте {3,5} к вашему выражению, которое означает длину от 3 до 5

/^([a-zA-Z0-9_-]){3,5}$/

Ответ 2

Вам нужно будет точно определить буквенно-цифровые символы, но

/^(\w{3,5})$/ 

Соответствует любой комбинации цифр/символов/_ длины 3-5.

Если вам также нужна тире, , не забудьте его избежать (\-) добавьте его, например:

/^([\w\-]{3,5})$/ 

Также: привязка ^ означает, что последовательность должна начинаться в начале строки (символьная строка) и $, которая заканчивается в конце строки (символьная строка). Поэтому ваша строка value не должна содержать ничего, иначе она не будет соответствовать.

Ответ 3

Сначала это script проверяет строки N, имеющие символы от 3 до 5.

Для языка multi (арабский, Украинский) вы Обязательно используете этот

var regex = /^([a-zA-Z0-9_-\u0600-\u065f\u066a-\u06EF\u06fa-\u06ff\ufb8a\u067e\u0686\u06af\u0750-\u077f\ufb50-\ufbc1\ufbd3-\ufd3f\ufd50-\ufd8f\ufd92-\ufdc7\ufe70-\ufefc\uFDF0-\uFDFD]+){3,5}$/;  regex.test('мшефн');

Другие мудрые ниже для Английский Только буквенно-цифровой

/^([a-zA-Z0-9_-]){3,5}$/

P.S вышеуказанная доза не принимает специальные символы

одна последняя вещь, вышеприведенная доза не занимает места в качестве теста, она будет терпеть неудачу, если есть пространство, если вы хотите пространство, а затем добавить после 0-9\s

\s

И если вы хотите проверить длину всей строки, добавьте точку.

var regex = /^([a-zA-Z0-9\[email protected],!=%$#&_-\u0600-\u065f\u066a-\u06EF\u06fa-\u06ff\ufb8a\u067e\u0686\u06af\u0750-\u077f\ufb50-\ufbc1\ufbd3-\ufd3f\ufd50-\ufd8f\ufd92-\ufdc7\ufe70-\ufefc\uFDF0-\uFDFD]).{1,30}$/;