Validating Credit Card Numbers

  • + 0 comments
    1. def check(no):
    2. clean = no.replace("-", "")
    3. if len(clean)>16:
    4. return "Invalid"
    5. for i in range(len(clean) - 4):
    6. if clean[i] == clean[i+1] == clean[i+2] == clean[i+3]:
    7. return "Invalid"
    8. match = re.match(r"(([4-6]\d{3})(-?)\d{4}(-?)\d{4}(-?)\d{4})",no)
    9. if match:
    10. return "Valid"
    11. else:
    12. return "Invalid"
      1. for i in range(int(input())):
    13. print(check(input()))