Я получаю телефонные номера с мобильного устройства, формат варьируется от международного формата или нет.Сравнение «мобильных номеров» - и/или международного формата
Сценарий (ZA форматирует только для примера):
Зарегистрированные номера в базе данных всегда в международном формате: +27827177982
Числа я получаю может изменяться, например, +27827177982
= 27827177982
= 0827177982
- международный префикс для номера является +27
Как сопоставить его международный формат, даже если я не получаю международный формат ???
Имейте в виду:
Я не могу сделать преобразование только для 1 региона.
Есть ли простой способ сравнения номеров мобильных телефонов для всех регионов?
Приставки диапазоны в количестве символов ссылка: http://en.wikipedia.org/wiki/List_of_country_calling_codes
Мои идеи:
Сравни последние 9 знаков номера, это позволит исключить префикс региона .. но в каждом регионе есть только «9 символов, исключая префикс»?
Проникните через базу данных, сравнивая номера телефонов пару раз, например. проверить последние 9 цифр - если совпадение - проверьте на последние 10 и т.д. (но может вызвать нежелательные матчи)
Любая помощь будет в значительной степени быть оценены
Зная страну происхождения, по крайней мере, один телефонный номер (при условии, что вы всегда сравнивая два), очень полезно здесь ... Тогда вы можете построить прочный алгоритм ... Я сделал это несколько раз, дайте мне знать, если вы все еще хотите помочь :) – Grantly