Validation du numéros de telephone
Fermé
mimi19911980
Messages postés
22
Date d'inscription
mardi 10 novembre 2020
Statut
Membre
Dernière intervention
14 octobre 2021
-
Modifié le 30 nov. 2020 à 01:17
Whismeril Messages postés 19028 Date d'inscription mardi 11 mars 2003 Statut Non membre Dernière intervention 24 avril 2024 - 30 nov. 2020 à 09:26
Whismeril Messages postés 19028 Date d'inscription mardi 11 mars 2003 Statut Non membre Dernière intervention 24 avril 2024 - 30 nov. 2020 à 09:26
A voir également:
- Regex numéro de téléphone 10 chiffres
- Numero prive - Guide
- Règle en cm sur téléphone - Guide
- Clé windows 10 gratuit - Guide
- Windows 10 gratuit - Guide
- Schéma téléphone oublié - Guide
2 réponses
Whismeril
Messages postés
19028
Date d'inscription
mardi 11 mars 2003
Statut
Non membre
Dernière intervention
24 avril 2024
931
30 nov. 2020 à 08:22
30 nov. 2020 à 08:22
Bonjour
Merci à Chris d'avoir rendu ton code lisible.
Pour tes prochains post, merci de lire attentivement ce petit tuto https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Concernant ton problème.
Cette fonction utilise une regex, c'est un outil qui permet de vérifier si un texte correspond à un format, ou à trouver dans un texte un morceau qui correspond à un format.
Dans ton cas, le format est 3 chiffres, puis un espace ou un tiret, puis 3 chiffres, puis un espace ou un tiret, puis 4 chiffres.
Voir quelques exemples ici https://regex101.com/r/VN0zYn/1, ce qui est coloré dans "test string" correspond au format.
Si tu rentres 123-456-789 (qui est accepté) directement dans un parseInt, il y'a effectivement des chances que ça plante.
Merci à Chris d'avoir rendu ton code lisible.
Pour tes prochains post, merci de lire attentivement ce petit tuto https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Concernant ton problème.
si je dépasse le parsInt pente.tu n'as pas montré comment tu essayes de parser.
j'ai cette fonction pour valider le numéro de téléphone saisi
Cette fonction utilise une regex, c'est un outil qui permet de vérifier si un texte correspond à un format, ou à trouver dans un texte un morceau qui correspond à un format.
Dans ton cas, le format est 3 chiffres, puis un espace ou un tiret, puis 3 chiffres, puis un espace ou un tiret, puis 4 chiffres.
Voir quelques exemples ici https://regex101.com/r/VN0zYn/1, ce qui est coloré dans "test string" correspond au format.
Si tu rentres 123-456-789 (qui est accepté) directement dans un parseInt, il y'a effectivement des chances que ça plante.
KX
Messages postés
16734
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
24 avril 2024
3 015
30 nov. 2020 à 08:33
30 nov. 2020 à 08:33
Bonjour,
Dans ta regex tu acceptes les espaces et les tirets, il faudra les retirer avant de faire la conversion en int.
Toutefois la conversion en int est une mauvaise idée, d'une part car si le numéro commence par un ou plusieurs zéros ils seront ignorés, d'autre part car la valeur maximale d'un int est 2'147'483'647.
Au final il n'y a donc que les numéros de téléphones qui commencent par 1 qui seront correctement stockés avec un int, tous les autres seront faux.
Pour stocker un numéro de téléphone, le String est nettement mieux qu'un int, ce qui ne t'empêche pas de quand même vérifier son format avec la regex.
Dans ta regex tu acceptes les espaces et les tirets, il faudra les retirer avant de faire la conversion en int.
Toutefois la conversion en int est une mauvaise idée, d'une part car si le numéro commence par un ou plusieurs zéros ils seront ignorés, d'autre part car la valeur maximale d'un int est 2'147'483'647.
Au final il n'y a donc que les numéros de téléphones qui commencent par 1 qui seront correctement stockés avec un int, tous les autres seront faux.
Pour stocker un numéro de téléphone, le String est nettement mieux qu'un int, ce qui ne t'empêche pas de quand même vérifier son format avec la regex.
Whismeril
Messages postés
19028
Date d'inscription
mardi 11 mars 2003
Statut
Non membre
Dernière intervention
24 avril 2024
931
30 nov. 2020 à 09:26
30 nov. 2020 à 09:26
Hello, ha oui, j’ai pas pensé à la valeur max du int.
Bien vu
Bien vu
30 nov. 2020 à 08:24
Hors pour te montrer, je voulais qu'on puisse trouver les morceaux du texte qui vont bien