Otrzymuję numery telefonów z urządzeń przenośnych, format różni się od formatu międzynarodowego lub nie.Porównywanie "numerów komórkowych" i/lub formatu międzynarodowego
Scenariusz (ZA formatuje tylko dla przykładu):
Zarejestrowane numery w bazie danych są zawsze Format międzynarodowy: +27827177982
Liczby otrzymam może być różna, np +27827177982
= 27827177982
= 0827177982
- międzynarodowy prefiks dla numeru jest +27
Jak mogę dopasować go do formatu międzynarodowego chociaż nie otrzymują format międzynarodowy ???
Pamiętaj:
nie mogę zrobić konwersję tylko przez 1 regionu.
Czy istnieje prosty sposób porównywania numerów telefonów komórkowych we wszystkich regionach?
Prefiksy waha się w ilości znaków odniesienia: http://en.wikipedia.org/wiki/List_of_country_calling_codes
Moje pomysły:
Porównaj ostatnie 9 znaków numeru, to wyklucza regionu prefiks .. ale czy każdy region ma tylko "9 znaków bez prefiksu"?
Przeprowadź pętlę w bazie danych, porównując kilka numerów telefonicznych kilka razy, np. sprawdzić za ostatnie 9 liczb - jeśli nie pasuje - sprawdź ostatnich 10 itd (Ale może powodować niepożądane mecze)
Każda pomoc będzie znacznie Należy zauważyć
znając kraj pochodzenia przynajmniej jeden numer telefonu (zakładając, że są zawsze porównując dwa), jest bardzo pomocny tutaj ... Następnie można zbudować solidne algorytmu ... Zrobiłem to kilka razy, daj mi znać, jeśli nadal potrzebujesz pomocy :) – Grantly