Je dois valider l'entrée utilisateur d'un numéro de téléphone international. Selon E.164 , la longueur maximale est de 15 chiffres, mais je n'ai pas pu trouver d'informations sur le minimum. Je considère uniquement les chiffres, pas de signe plus ni de séparateurs.
validation
SlimShaggy
la source
la source
Réponses:
Selon différentes sources, je pense que la longueur minimale au format E-164 dépend d'un pays à l'autre. Par exemple:
Pour la Suède : la longueur minimale du numéro (sans l'indicatif du pays) est de 7 chiffres. - Source officielle (indicatif de pays 46)
Pour les Îles Salomon, ses 5 pour les téléphones fixes. - Source (indicatif de pays 677)
... etc. Donc, y compris le code de pays, la longueur minimale est de 9 chiffres pour la Suède et de 11 pour Israël et de 8 pour les îles Salomon.
Modifier (Solution propre) : En fait, au lieu de valider un numéro de téléphone international en effectuant différentes vérifications comme la longueur, etc., vous pouvez utiliser la bibliothèque libphonenumber de Google . Il peut valider directement un numéro de téléphone au format E164. Il prendra en compte tout et vous n'avez même pas besoin de donner le pays si le numéro est au format E164 valide. C'est plutôt bon! Prenons un exemple:
Si vous connaissez le pays pour lequel vous validez les numéros, vous n'avez même pas besoin du format E164 et pouvez spécifier le pays en
.parse
fonction au lieu de passernull
.la source
getPhoneType
semble retourner UAN. Donc, ce numéro 2222 est UAN. Mais les numéros d'accès universel peuvent également être plus longs. Techniquement, il semble être un numéro valide. Vous pouvez donc vérifier le type de numéro de téléphone ou une longueur minimale de votre part.EDIT 2015-06-27: Le minimum est en fait de 8, y compris le code du pays. Ma faute.
Message original
Le numéro de téléphone minimum que j'utilise est de 10 chiffres. Les utilisateurs internationaux devraient toujours mettre leur code de pays, et pour autant que je sache, il n'y a pas de pays avec moins de dix chiffres si vous comptez le code de pays.
Plus d'informations ici: https://en.wikipedia.org/wiki/Telephone_numbering_plan
la source
La longueur minimale est de 4 pour Sainte-Hélène (Format: +290 XXXX) et Niue (Format: +683 XXXX).
la source