更改ruby中的日期格式

cod*_*pso 0 ruby regex

my date = "29-07-2015"
Run Code Online (Sandbox Code Playgroud)

我想要的是: "2015-07-29"

这适用于irb但不是我的ruby文件:

date.gsub(/(\d{2})-(\d{2})-(\d{4})/, '\3-\2-\1') 
Run Code Online (Sandbox Code Playgroud)

有没有其他方法可以做到这一点?

tad*_*man 6

只需解析并重写:

require 'date'

d = Date.strptime('29-07-2015', '%d-%m-%Y')

d.strftime('%Y-%m-%d')
# => "2015-07-29"
Run Code Online (Sandbox Code Playgroud)

strptime功能和strftime功能采用相同的格式选项,这样他们就可以撤消其他生产什么.