我需要使用 Python 正则表达式验证一个数字,但它不起作用。
下面的代码是另一个文件正在使用的库。在这一点上,我只是想让输入成为 13 到 19 位之间的唯一数字。该范围工作得很好,但是当我在输入中输入一个字母时,它会打印它,而不是给出“无效”字符串输出:
"""
Credit card number validation and provider check
"""
import re
def card_range(cardNumber):
"""
Checks the credit card number length
"""
if len(cardNumber) < 13:
return "Invalid"
if len(cardNumber) > 19:
return "Invalid"
pattern = re.compile("[0-9]+")
if not pattern.match(cardNumber):
return "Invalid"
return cardNumber