Подтвердить что ты не робот

Регулярное выражение для числа с длиной 4, 5 или 6

Мне нужно регулярное выражение, которое проверяет число с длиной 4, 5, 6

Я использовал ^ [0-9] {4} для проверки на число из 4, но я не знаю, как включить проверку для 5 и 6.

4b9b3361

Ответ 1

Попробуйте следующее:

^[0-9]{4,6}$

{4,6}= от 4 до 6 символов включительно.

Ответ 2

Имейте в виду, что, как написано, решение Peter "примет" 0000. Если вы хотите проверить числа между 1000 и 999999, то это еще одна проблема: -)

^[1-9][0-9]{3,5}$

например, заблокирует вставку 0 в начале строки.

Если вы хотите принять 0 padding, но только до lengh из 6, так что 001000 действителен, тогда он становится более сложным. Если мы используем look-ahead, мы можем написать что-то вроде

^(?=[0-9]{4,6}$)0*[1-9][0-9]{3,}$

Это сначала проверяет, длинна ли строка 4-6 (?=[0-9]{4,6}$), затем пропускает 0s 0* и ищет ненулевое [1-9], за которым следует как минимум 3 цифры [0-9]{3,}.

Ответ 3

[0-9]{4,6} можно сократить до \d{4,6}

Ответ 4

Если используемый вами язык принимает {}, вы можете использовать [0-9]{4,6}.

Если нет, вам нужно использовать [0-9][0-9][0-9][0-9][0-9]?[0-9]?.