Ответ 1
Попробуйте следующее:
^[0-9]{4,6}$
{4,6}
= от 4 до 6 символов включительно.
Мне нужно регулярное выражение, которое проверяет число с длиной 4, 5, 6
Я использовал ^ [0-9] {4} для проверки на число из 4, но я не знаю, как включить проверку для 5 и 6.
Попробуйте следующее:
^[0-9]{4,6}$
{4,6}
= от 4 до 6 символов включительно.
Имейте в виду, что, как написано, решение 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,}
.
[0-9]{4,6}
можно сократить до \d{4,6}
Если используемый вами язык принимает {}
, вы можете использовать [0-9]{4,6}
.
Если нет, вам нужно использовать [0-9][0-9][0-9][0-9][0-9]?[0-9]?
.