Skip to content

Latest commit

 

History

History
118 lines (72 loc) · 2.57 KB

File metadata and controls

118 lines (72 loc) · 2.57 KB

🔐 Regex validate PIN code

Codewars Language Framework

📘 Description

Les distributeurs automatiques (ATM) utilisent des codes PIN pour sécuriser l'accès aux comptes.

Un code PIN valide doit respecter les règles suivantes :

  • contenir exactement 4 chiffres
  • ou contenir exactement 6 chiffres
  • ne contenir aucun autre caractère

Votre objectif est d'écrire une fonction qui vérifie si une chaîne correspond à un code PIN valide.

La fonction doit retourner :

  • true → si le PIN est valide
  • false → sinon

🔗 Kata Codewars - Regex validate PIN code

• • •

⚙️ Règles

La fonction doit respecter les règles suivantes :

  • Recevoir une chaîne représentant un code PIN
  • Vérifier que la chaîne contient :
    • exactement 4 chiffres
    • ou exactement 6 chiffres
  • Aucun autre caractère n'est autorisé :
    • pas de lettres
    • pas d'espaces
    • pas de symboles

• • •

💡 Principe

Le traitement consiste à valider le format du code PIN.

Deux conditions sont possibles :


4 chiffres

ou


6 chiffres

Cette validation peut être réalisée avec une expression régulière.

Exemple de motif possible :


^[0-9]{4}$ | ^[0-9]{6}$

Ce motif vérifie que la chaîne contient exactement 4 ou 6 chiffres.

• • •

🔎 Exemples

PIN Explication Résultat
"1234" 4 chiffres true
"123456" 6 chiffres true
"12345" longueur invalide false
"a234" contient une lettre false
"12 34" contient un espace false

• • •

🧪 Tests

Les tests unitaires associés sont disponibles dans le projet :

Les tests couvrent notamment :

  • les PIN valides à 4 chiffres
  • les PIN valides à 6 chiffres
  • les longueurs incorrectes
  • la présence de lettres ou caractères non numériques
  • plusieurs tests automatiques

• • •

🧾 Résumé

La fonction doit :

  • recevoir une chaîne représentant un code PIN
  • vérifier qu'elle contient exactement 4 ou 6 chiffres
  • retourner :

true  → si le PIN est valide
false → sinon