Skip to content

Latest commit

 

History

History
36 lines (28 loc) · 1.85 KB

README.md

File metadata and controls

36 lines (28 loc) · 1.85 KB

Нормализация номеров телефона

Довольно часто приходится приводить номера телефонов в единому формату. Особенно перех получением хеша номера телефона.

Согласно рекомендации E.164 указывается в формате:

+код_страны код_региона номер_телефона

Данные скрипты приводят номера телефонов в этот формат. Если код страны не указан, предполагается Россия +7.

Проверочные данные

Следующие примеры показывают приведение и нормализацию номеров телефона.

Входная строка Нормализованный номер
+7 (999) 999-99-99 +79999999999
7 999 999-99-99 +79999999999
8 (999) 999-99-99 +79999999999
999 999-99-99 +79999999999
+9 999 999-99-99 +99999999999

Правила нормализации

  1. Если длина строки меньше 8 символов, нормализация не производится
  2. Удалить из строки все символы, кроме цифры и +
  3. Если строка не начинается на + и содержит меньше 11 символов, добавить +7 в начало
  4. Если строка начинается на 8 и содержит 11 символов, заменить начальный 8 на +7
  5. Если строка не начинается на +, добавить + в начало