Какова минимальная длина действительного международного номера телефона?

Мне нужно проверить ввод данных международного номера телефона. Согласно E.164 максимальная длина составляет 15 цифр, но я не смог найти никакой информации о минимуме. Я считаю только цифры, нет плюса или разделителей.

Ответ 1

Как и в разных источниках, я думаю, что минимальная длина в формате E-164 зависит от страны. Например,

  • Для Израиля: минимальная длина номера телефона (исключая код страны) - 8 цифр. - Официальный источник (Код страны 972)
  • Для Швеции: минимальная длина (исключая код страны) составляет 7 цифр. - Официальный источник (код страны 46)

  • Для Соломоновых островов его 5 для телефонов с фиксированной линией. - Источник (код страны 677)

... и так далее. Так, включая код страны, минимальная длина составляет 9 цифр для Швеции и 11 для Израиля и 8 для Соломоновых островов.

Изменить (чистое решение). Фактически вместо проверки международного номера телефона с помощью различных проверок, таких как длина и т.д., вы можете использовать Google libphonenumber. Он может напрямую проверять номер телефона в формате E164. Он будет учитывать все, и вам даже не нужно указывать страну, если номер находится в действительном формате E164. Это очень хорошо! Пример:

String phoneNumberE164Format = "+14167129018"
PhoneNumberUtil phoneUtil = PhoneNumberUtil.getInstance();
try {
    PhoneNumber phoneNumberProto = phoneUtil.parse(phoneNumberE164Format, null);
    boolean isValid = phoneUtil.isValidNumber(phoneNumberProto); // returns true if valid
    if (isValid) {
        // Actions to perform if the number is valid
    } else {
        // Do necessary actions if its not valid 
    }
} catch (NumberParseException e) {
    System.err.println("NumberParseException was thrown: " + e.toString());
}

Если вам известна страна, для которой вы проверяете номера, вы даже не нуждаетесь в формате E164 и можете указать страну в функции .parse вместо передачи null.

Ответ 2

РЕДАКТИРОВАТЬ 2015-06-27: минимум - это 8, включая код страны. Мой плохой.

Оригинальный пост

Минимальный номер телефона, который я использую, составляет 10 цифр. Международные пользователи всегда должны указывать свой код страны, и, насколько я знаю, нет стран с менее чем десятью цифрами, если вы считаете код страны.

Дополнительная информация здесь: https://en.wikipedia.org/wiki/Telephone_numbering_plan

Ответ 3

Минимальная длина - 4 для Святой Елены (формат: +290 XXXX) и Ниуэ (формат: +683 XXXX).