Проверка правильности номера телефона в Regex US

110
13

Я нашел это javascript regex, чтобы проверить формат, который могут быть записаны в телефонных номерах США. Но у него есть проблема: он не соответствует второму правилу в этой группе:

Первая группа из трех цифр, известная как код зоны, начинается с номера 2-9, затем 0-8, а затем любая третья цифра.

Он принимает 9, тогда как он должен принимать только числа из (0-8). Это регулярное выражение показывает все: http://regexr.com/3ackc

/^(1[- .]?)?(\([2-9]\d{2}\)[. -]?|[2-9]\d{2}[. -]?)[2-9]\d{2}[- .]?\d{4}$/gm

спросил(а) 2021-01-19T17:19:28+03:00 6 месяцев, 1 неделя назад
1
Решение
99

Я не полностью осознал обозначение и точные ограничения номеров телефонов в США, поэтому я упомянул Википедию и придумал следующее:

/^[2-9][0-8]\d\-?[2-9]([02-9]{2}|[02-9]\d||\d[02-9])\-?\d{4}$/g

Matches in Regexhelper

ответил(а) 2021-01-19T17:19:28+03:00 6 месяцев, 1 неделя назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема