У меня нет кода для меня, но довольно просто разобрать строку справа налево. Вы можете сделать это и просто установить произвольный предел того, насколько точным должен быть стоп.
Например (псевдокод), учитывая 2 строки (строка1 и строка2):
if first-char = '+'
len = 9
else
len = length(string1)
end
len = min(len, length(string2))
match = true
for i = len to 1
if substr( string2, i, 1) != substr( string2, i, 1)
match = false
quit
end
i--
end
Вы можете полюбоваться, проверив символы сразу после знака «+», чтобы определить код страны, который даст вам знать, как долго могут быть номера телефонов этой страны.
Вам также необходимо проверить людей, которые вводят номера, например, например. '(123) 456-7890 x1234', если это возможно. Так что может быть проще использовать какой-нибудь вариант регулярного выражения ...
Рори