basi c номер телефона, проверяющий регулярное выражение - PullRequest
0 голосов
/ 05 мая 2020

Каким будет код регулярного выражения для проверки числа, число должно читаться только в том случае, если оно находится между 10-13 цифрами

Я использую это регулярное выражение: / \ d ([0-9 ] {11,13}) \ z /

Проблема в том, что он должен принимать только цифры от 11 до 13, если он превышает 13, он все равно принимает их.

Я хочу, чтобы он просто проверял эти вид чисел:

12345678910 = 11 Digits 123456789101 = 12 Digits

1 Ответ

2 голосов
/ 05 мая 2020

Ваше регулярное выражение соответствует следующему:

  • \d, то есть числовой символ
  • , за которым следуют 11, 12 или 13 символов из диапазона 0-9
  • , за которым следует конец строки

Таким образом, ваше регулярное выражение в настоящее время соответствует строке numeri c с числом от 12 до 14 символов c в конце. Он не соответствует строке numeri c, содержащей всего 11 символов. Все, что находится в начале строки до этого, игнорируется (т.е. ваше регулярное выражение также будет соответствовать foobar 1234567891012)

Чтобы исправить ваше регулярное выражение, вы можете упростить его до

/\A\d{10,13}\z/

Это регулярное выражение будет соответствовать следующему:

  • начало строки
  • , за которым следуют цифры от 10 до 13 c символы
  • , за которым следует конец строки
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...