红宝石 – 如何在没有前导零或领先空间的情况下写下时间?
发布时间:2020-12-16 19:58:55 所属栏目:百科 来源:网络整理
导读:在 Ruby 1.9程序中,我想格式化当前的时间,如下午1:51.我应该在一天中使用什么格式的代码(在这个例子中为1)? Time.now.strftime '%a %I:%M %p' #= "Thu 01:51 PM"Time.now.strftime '%a %l:%M %p' #= "Thu 1:51 PM" %我有一个前导零(01). %l具有前导空间(1
在
Ruby 1.9程序中,我想格式化当前的时间,如下午1:51.我应该在一天中使用什么格式的代码(在这个例子中为1)?
Time.now.strftime '%a %I:%M %p' #=> "Thu 01:51 PM" Time.now.strftime '%a %l:%M %p' #=> "Thu 1:51 PM" %我有一个前导零(01). %l具有前导空间(1).我在strftime documentation中没有看到任何其他格式代码.我不能使用.lstrip,因为空格在字符串的中间.我可以使用.gsub(/ /,“”),但是我想知道是否有更少的黑客,更简单的方法. 解决方法Time.now.strftime '%a %-l:%M %p' #=> "Thu 1:51 PM" 写入%-l而不是%l. – 带领空格和零. 您也可以使用其他格式代码. Ruby strftime文档甚至提到%-m和%-d,尽管没有提到可以使用任何代码.因此,%-I将给出与%-l相同的结果.但是我建议使用%-l,因为使用l而不是我,这意味着你不需要任何东西在开始 – 它写的空间看起来更加意外. 您还可以看到an exhaustive list of Ruby 1.8 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |