我希望这段代码能给我一个ArgumentError: invalid date
错误。在Ruby 2.0.0中:irb:
irb(main):003:0> Date.strptime('05-10-2014', '%Y-%m-%d')
=> #<Date: 0005-10-20 ((1723177j,0s,0n),+0s,2299161j)>
即使我指定%Y
,我做错了还是Ruby会接受2位数的年份?
我正在考虑测试用户输入。在这种情况下,我的程序期望它在%Y-%m-%d
中,并且输入日期是&#34;输入&#34;格式错误,但strptime
表示没问题。
答案 0 :(得分:7)
去年有一个针对这个问题的Ruby漏洞,但它被拒绝了。我想Ruby团队认为这是有效的行为。