我有一个与信用卡上的到期日期相匹配的正则表达式 我正在寻找的格式是 mm/yy。以下是我在 javascript 中的函数

validateCreditCardExpiry: function(expiry){ 
        if(this.isEmpty(expiry)) 
        { 
            return false; 
        } 
        var regex = /^(0[1-9]|1[0-2])\/?([0-9]{2})$/; 
        if(!regex.test(expiry)) 
        { 
            return false 
        } 
        return true 
    } 

我尝试在字符串(例如 12/33)上使用上面的内容,它返回 false。有人可以帮我吗。谢谢

请您参考如下方法:

除了我的评论( see your working regex here ),您可以很好地缩短您的函数:

validateCreditCardExpiry: function(expiry){ 
    if (expiry) { 
        var regex = /^(0[1-9]|1[0-2])\/?([0-9]{2})$/; 
        if(regex.test(expiry)) return true; 
    } 
    return false; 
} 

或者-如@anubhava在评论中指出,甚至更短:

validateCreditCardExpiry: function(expiry){ 
    return /^(0[1-9]|1[0-2])\/?[0-9]{2}$/.test(expiry); 
} 


评论关闭
IT虾米网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!