gpt4 book ai didi

ruby-on-rails - Ruby 中的日期验证

转载 作者:太空宇宙 更新时间:2023-11-03 17:45:37 27 4
gpt4 key购买 nike

如何检查日期是否为 ruby​​ 中的有效日期。许多方法仅检查范围。但是,我需要检查日期week 检查日期是否有效。例如:

    20 Jul 2016 Wed --> Valid
20 Jul 2016 Mon --> Not-Valid

如何在 ruby 中做到这一点?

最佳答案

我不是假装最好的解决方案,但这应该可行。

def valid_date?(date)
Date.parse(date).strftime("%d %b %Y %a") == date
end

[55] pry(main)> valid_date?("20 Jul 2016 Wed")
=> true
[56] pry(main)> valid_date?("20 Jul 2016 Mon")
=> false
[57] pry(main)>

如果您有多种格式,您可以将格式作为第二个参数传递

def valid_date?(date, fmt)
Date.parse(date).strftime(fmt) == date
end

=> :valid_date?
[59] pry(main)> valid_date?("20 Jul 2016 Wed", "%d %b %Y %a")
=> true

希望这会有所帮助。

更新

正如我在评论中提到的,方法名称与现有方法重叠 valid_date?

因此,您可以重命名自定义方法

def date_valid?(date, fmt)
Date.parse(date).strftime(fmt) == date
end

[2] pry(main)> date_valid?("20 Jul 2016 Wed", "%d %b %Y %a")
=> true

关于ruby-on-rails - Ruby 中的日期验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38472562/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com