Довольно часто приходится приводить номера телефонов в единому формату. Особенно перех получением хеша номера телефона.
Согласно рекомендации 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 |
- Если длина строки меньше 8 символов, нормализация не производится
- Удалить из строки все символы, кроме цифры и +
- Если строка не начинается на + и содержит меньше 11 символов, добавить +7 в начало
- Если строка начинается на 8 и содержит 11 символов, заменить начальный 8 на +7
- Если строка не начинается на +, добавить + в начало