gpt4 book ai didi

ruby - 如何格式化 ruby​​ 中的日期以包含 "rd",如 "3rd"

转载 作者:数据小太阳 更新时间:2023-10-29 06:28:40 25 4
gpt4 key购买 nike

我想格式化一个日期对象,以便我可以显示诸如“7 月 3 日”或“10 月 1 日”之类的字符串。我在 Date.strftime 中找不到生成“rd”和“st”的选项。有人知道怎么做吗?

最佳答案

除非你使用的是 Rails,否则请添加此 ordinalize 方法(不要脸的代码从 Rails 源代码中提取)到 Fixnum

class Fixnum
def ordinalize
if (11..13).include?(self % 100)
"#{self}th"
else
case self % 10
when 1; "#{self}st"
when 2; "#{self}nd"
when 3; "#{self}rd"
else "#{self}th"
end
end
end
end

然后像这样格式化你的日期:

> now = Time.now
> puts now.strftime("#{now.day.ordinalize} of %B, %Y")
=> 4th of July, 2009

关于ruby - 如何格式化 ruby​​ 中的日期以包含 "rd",如 "3rd",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1081926/

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