检查正则表达式的日期

时间:2014-02-27 15:43:14

标签: ruby-on-rails regex ruby-on-rails-4

我使用正则表达式。

validates :cc_exp_date , format: { with: /(?<month>1[0-2]|0[1-9])\/(?<year>[0-9]{2,4}$)/, message: "invalid date" }

使用此表达式以此格式检查日期:

MM/YY, MM/YYYY.

但是当我输入这样的日期时:

MM/YYYYYY

验证失败,值将保存在数据库中。我做错了什么?

1 个答案:

答案 0 :(得分:0)

正确的正则表达式。

validates :cc_exp_date , format: { with: /\A(?<month>1[0-2]|0[1-9])\/(?<year>[2-9]\d[1-9]\d|[1-9]\d)\z/, message: "invalid date" }