Ich muss die Benutzereingabe einer internationalen Telefonnummer überprüfen. Laut E.164 beträgt die maximale Länge 15 Stellen, aber ich konnte keine Informationen über die minimale Länge finden. Ich betrachte nur Ziffern, kein Pluszeichen oder Trennzeichen.
validation
SlimShaggy
quelle
quelle
Antworten:
Laut verschiedenen Quellen hängt die Mindestlänge im E-164-Format von Land zu Land ab. Zum Beispiel:
Für Schweden : Die Mindestanzahl (ohne Ländercode) beträgt 7 Ziffern. - Offizielle Quelle (Ländercode 46)
Für Salomonen sind es 5 für Festnetztelefone. - Quelle (Ländercode 677)
... und so weiter. Inklusive Landesvorwahl beträgt die Mindestlänge 9 Stellen für Schweden und 11 für Israel und 8 für die Salomonen.
Bearbeiten (saubere Lösung) : Anstatt eine internationale Telefonnummer durch unterschiedliche Überprüfungen wie Länge usw. zu validieren, können Sie die libphonenumber- Bibliothek von Google verwenden . Es kann eine Telefonnummer im E164-Format direkt validieren. Es wird alles berücksichtigt und Sie müssen nicht einmal das Land angeben, wenn die Nummer im gültigen E164-Format vorliegt. Es ist sehr gut! Ein Beispiel nehmen:
Wenn Sie das Land kennen, für das Sie die Nummern validieren, benötigen Sie nicht einmal das E164-Format und können das
.parse
funktionierende Land angeben, anstatt es zu übergebennull
.quelle
getPhoneType
scheint UAN zurückzugeben. Diese 2222-Nummer ist also UAN. Universal Access Numbers können aber auch länger sein. Technisch scheint es eine gültige Nummer zu sein. Sie können also entweder den Typ der Telefonnummer oder eine Mindestlänge überprüfen.EDIT 2015-06-27: Minimum ist tatsächlich 8, einschließlich Ländercode. Mein Fehler.
Ursprünglicher Beitrag
Die minimale Telefonnummer, die ich benutze, ist 10 Ziffern. Internationale Benutzer sollten immer ihre Landesvorwahl eingeben, und meines Wissens gibt es keine Länder mit weniger als zehn Ziffern, wenn Sie die Landesvorwahl zählen.
Weitere Informationen hier: https://en.wikipedia.org/wiki/Telephone_numbering_plan
quelle
Die Mindestlänge beträgt 4 für Saint Helena (Format: +290 XXXX) und Niue (Format: +683 XXXX).
quelle