Валидатор телефонных номеров - PullRequest
0 голосов
/ 05 августа 2020

Привет всем, я работаю над проектом телефонного номера, я пробовал много шаблонов регулярных выражений, чтобы соответствовать регистрам, но я все еще застрял

Пользователь может заполнить поле формы любым способом по своему усмотрению, если он имеет формат действительного номера в США. Ниже приведены примеры допустимых форматов для номеров США (другие варианты см. В приведенных ниже тестах):

555-555-5555

(555) 555-5555

(555) 555-5555

555 555 5555

5555555555

1 555 555 5555

вот что я пробовал

1([(\s]+\d{3}[)\s])(\d+)$|([\s(\d]\d+[\s|)|-\d])(\d+[\s-\d])+(\d+)$

валидатор должен возвращать false для любого случая, который не соответствует приведенным выше, например: 10 (757) 622-7382 или 555) -555-5555

1 Ответ

1 голос
/ 05 августа 2020
^(1 )?(\d{3}|\(\d{3}\))[\- ]?\d{3}[\- ]?\d{4}$

^                 start of string
(1 )?             optional "1 "
(
    \d{3}            three digits
    |                or
    \(\d{3}\)        three digits wrapped in parenthasis
)
[\- ]?            optional "- " charactor
\d{3}             three digits
[\- ]?            optional "- " charactor
\d{4}             four digits
$                 end of string

Вы можете увидеть его здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...