信用卡到期的正则表达式

Posted

技术标签:

【中文标题】信用卡到期的正则表达式【英文标题】:Regex for credit card expiration 【发布时间】:2016-03-12 07:35:16 【问题描述】:

我正在尝试编写一个表达式,以 MM / YY 的形式验证信用卡到期。我想出的原始表达是:

/^\d1,2\/\d2$/

这很好用,只是它不考虑 / 两边的空格。如何修改?

谢谢

【问题讨论】:

/^\d1,2\s*\/\s*\d2$/ 【参考方案1】:

我建议使用以下正则表达式:

/^(?:0?[1-9]|1[0-2]) *\/ *[1-9][0-9]$/

月份必须在非标记组中带有 OR 表达式

19 范围内的单个数字,因此 0 无效, 或两位数,第一位为0,第二位为19,因此00 无效, 或两位数为101112

年份必须是两位数字,第一位数字不是0,因为这对于截止日期为 2100 年是不可能的。

/ 周围允许有 0 个或更多空格,但其他空白字符(如回车、换行、水平制表符、垂直制表符等)均与\s 匹配。

【讨论】:

以上是关于信用卡到期的正则表达式的主要内容,如果未能解决你的问题,请参考以下文章

带有熊猫的日期正则表达式过滤器不起作用

使用正则表达式验证信用卡格式?

vb.net正则表达式以获取到期账单的日期

信用卡公司会发布官方正则表达式吗?

使用正则表达式验证信用卡?

正则表达式识别商店信用卡号