格式mm / yyyy的日期正则表达式无效

时间:2014-11-13 05:56:41

标签: javascript regex date

我是regex的新手。我使用正则表达式'^((0?[1-9]|1[012])[- /.](20)?[0-9]{2})$' MM / YYYY 格式验证信用卡到期日期。

这是我的javascript函数,它会检查正则表达式并以 TRUE FALSE 给我回复。

function isValidThruDate(valid_till){

   var regex = new RegExp('^((0?[1-9]|1[012])[- /.](20)?[0-9]{2})$');
   return regex.test(valid_till);

}

但每当我把它传给日期时,它会给我 FALSE 作为回报。我无法弄清问题是什么。

2 个答案:

答案 0 :(得分:1)

function isValidThruDate(valid_till){

   return /^((0?[1-9]|1[012])\s*(?:[-/.]\s*)?(20)?[0-9]{2})$/.test(valid_till);

}

答案 1 :(得分:0)

处理空格:

function isValidThruDate(valid_till){

   var regex = new RegExp('^((0?[1-9]|1[012])[- /.](20)?[0-9]{2})$');
   return regex.test(valid_till.trim());

}

应该做的伎俩