Валидный номер телефона что это
Перейти к содержимому

Валидный номер телефона что это

  • автор:

Что такое валидный номер телефона?

Давайте представим на минутку, что вы решили зарегистрироваться на каком-нибудь сервисе в интернете. В настоящее время большинство сервисов для регистрации требует использование номера телефона (прежде было достаточно электронной почты). И вот вы видите следующее сообщение: “Укажите валидный номер телефона”. Что это значит?

Валидный означает правильный, допустимый, приемлемый, то есть вы должны указать тот номер телефона, к которому имеете доступ, поскольку на него с вероятностью в 99% придет код подтверждения – его необходимо указать для завершения регистрации.

Возьмем простой пример – установим мессенджер WhatsApp.

После установки запускаем.

Принимаем условия предоставления услуг, нажав “Принять и продолжить”.

После чего сразу будет предложено указать номер телефона для регистрации аккаунта.

Разумеется, вы должны указать валидный номер телефона, на который придет СМС с кодом. Если вы укажите невалидный номер телефона, то не сможете пройти регистрацию, поскольку без кода подтверждения это просто не получится сделать – он вводится в специальное поле:

Также рекомендуем обращать внимание на то, как именно стоит указывать номер телефона: большинство сервисов поддерживает различное указание номера, например 8 999 или +7 999, но отдельные из них поддерживают строгое указание номера, например, только +7999. Как правило, это указывается при регистрации аккаунта.

А еще мы бы хотели напомнить, чтобы вы не производили регистрацию в сервисах, если сим-карта зарегистрирована не на вас – в случае потери телефона доступ к сервису можно и не восстановить.

  • Оставить комментарий к статье.
  • Подписаться на наш канал на YouTube.
  • Подписаться на наш канал в Телеграме.
  • Подписаться на нашу группу ВКонтакте.
  • Подписаться на наш канал в Дзене.

Как проверить международный номер телефона на валидность?

В интернете нашел только примеры реализации такой валидации для определенных стран. Мне же требуется проверять на валидность номер любой страны. Возможно ли такое реализовать одним регулярным выражением? Если да, то как?

  • Вопрос задан более трёх лет назад
  • 2590 просмотров

2 комментария

Простой 2 комментария

Lynn

Всё остальное неуниверсально

Встречный вопрос: а зачем это делать одним регулярным выражением? Зачем такое ограничение самому себе и отвечающим? Зачем копать яму гигантской ложкой, когда есть лопата, кирка и лом? А проверка в два регулярных выражения вас не устроит? А проверка с помощью кода? Или код + рег. выражение?

Решения вопроса 0
Ответы на вопрос 4

trapwalker

Сергей П @trapwalker
Программист, энтузиаст

По идее стандарт номера телефона, по которому отовсюду можно позвонить такой: «\+\d<11>«.
Проблемы могут возникнуть с местными городскими соращенными номерами, там может быть и 5 цифр и 6 и 7 без кода города. Но если вы собираете номера телефонов по всему миру. то код города и страны вам все равно нужен,а значит 11-значный номер в любом случае будет правильным.
В разных местах по-разному ринято группировать цифры скобочками и дефисами. Но это к формату самого номера не относится, номер начинается с плюса и имеет 11 цифр. всё.
Из него взяв первую одну или больше цифр можно получить код страны, потом. для местных номеров, код региона, потом местный номер, но это лишнее, мне кажется. Берите одиннадцать цифр и всё.
Для разных стран можно предлагать пользователю разные форматы отображения и группировки цифр номера, но это уже прям можно сказать лишнее. Просто при вводе гнорируйте все кроме цифр, а плюс оставьте зафиксированным, чтобы люди догадались, что номер нужен в полном международном одиннадцатизначном формате.

Ответ написан более трёх лет назад
Нравится 1 4 комментария

Lynn

Если бы везде 11.
В Мексике, например 12 считая +52

Международный стандарт вроде ограничивает 15 цифрами.

Простейший способ валидации телефонных номеров на сайтах

Ещё одна раздражающая проблема многих сайтов — это когда сайт заставляет вводить тебя телефонный номер в понятном ЕМУ формате. Часто разработчики таких сайтов впридачу не удосуживаются сообщить пользователю, в каком формате сайт хочет видеть номер. Совсем клиника — когда ты видишь голое поле ввода номера, вводишь номер, жмёшь «Отправить» и получаешь сообщение типа «Телефон введён неправильно». Блин, а как правильно-то? И начинаешь перебирать разные форматы.

Сегодня рассмотрим простой способ валидации (проверки правильности ввода) телефонных номеров при условии того, что все посетители сайта — из России (или Казахстана). Российские номера телефонов начинаются с +7 и имеют далее 10 цифр. При этом, все люди привыкли вводить телефонные номера по-разному. Кто-то пишет кто-то кто-то ставит скобки и тире: кто-то пишет через восьмёрку: 89219710296, кто-то пишет просто 10 цифр: 921 971 02 96, ну и так далее. В нашем способе проверки все эти примеры будут считаться валидными, а на выходе мы будем иметь телефон в едином формате +7xxxxxxxxxx для удобного хранения номера в базе данных.

Код PHP-функции проверки телефонного номера:

function validate_russian_phone_number($tel) < $tel = trim((string)$tel); if (!$tel) return false; $tel = preg_replace('#[^0-9+]+#uis', '', $tel); if (!preg_match('#^(?:\\+?7|8|)(.*?)$#uis', $tel, $m)) return false; $tel = '+7' . preg_replace('#[^0-9]+#uis', '', $m[1]); if (!preg_match('#^\\+7[0-9]$#uis', $tel, $m)) return false; return $tel; >

Функция принимает на входе строку с телефонным номером в произвольном формате, а возвращает либо телефонный номер в формате +7xxxxxxxxxx , либо false в случае, если номер не прошёл проверку (и об этом следует сообщить пользователю).

Номер телефона

Ориентировано на российские мобильные + городские с кодом из 3 цифр (например, Москва).

Зеленый свет для:
+79261234567
89261234567
79261234567
+7 926 123 45 67
8(926)123-45-67
123-45-67
9261234567
79261234567
(495)1234567
(495) 123 45 67
89261234567
8-926-123-45-67
8 927 1234 234
8 927 12 12 888
8 927 12 555 12
8 927 123 8 123

UPD: спасибо Nutochka, bask и остальным участникам дискуссии: вместе мы нашли истину. Пусть регулярка теперь стала не такой критичной, но больше клиентов смогут ввести номер.

UPD 2: и отдельное «спасибо» всем, кто спустили мою карму. 🙂

  • телефон
  • регулярное выражение

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *