使用 space 分隔符从字符串中解析小时数
Parse hours from string with space delimiter
我的文件字符串在标题中包含日期,例如 2017-03-06 092328 - iPhone - Music Show - street performance, while walking the dog.m4a
我想解析这个字符串的日期,因为我需要以播客友好的格式打印它。
我能够解析出日期,但由于某种原因拒绝解析出时间部分:)
Date.strptime("2017-03-06 092328", "%Y-%m-%d %H%M%S").strftime(%Y-%m-%d %H%M%S)
预期输出:
"2017-03-06 092328"
实际产量
"2017-03-06 000000"
您的问题是 Date
是(多么令人惊讶!)一个日期,如 "Not a time, just a date".
require 'time'
Time.strptime("2017-03-06 092328", "%Y-%m-%d %H%M%S").strftime("%Y-%m-%d %H:%M:%S")
#=> "2017-03-06 09:23:28"
公平地说:
Time#strptime
mentions that it's based on Date#strptime
的文档
Date._parse("2017-03-06 09:23:28")
会幸福return{:hour=>9, :min=>23, :sec=>28, :year=>2017, :mon=>3, :mday=>6}
如果您觉得 Time
对象有日期和时间而 Date
只有日期令人困惑,您可以使用 DateTime
.
我的文件字符串在标题中包含日期,例如 2017-03-06 092328 - iPhone - Music Show - street performance, while walking the dog.m4a
我想解析这个字符串的日期,因为我需要以播客友好的格式打印它。
我能够解析出日期,但由于某种原因拒绝解析出时间部分:)
Date.strptime("2017-03-06 092328", "%Y-%m-%d %H%M%S").strftime(%Y-%m-%d %H%M%S)
预期输出:
"2017-03-06 092328"
实际产量
"2017-03-06 000000"
您的问题是 Date
是(多么令人惊讶!)一个日期,如 "Not a time, just a date".
require 'time'
Time.strptime("2017-03-06 092328", "%Y-%m-%d %H%M%S").strftime("%Y-%m-%d %H:%M:%S")
#=> "2017-03-06 09:23:28"
公平地说:
Time#strptime
mentions that it's based onDate#strptime
的文档
Date._parse("2017-03-06 09:23:28")
会幸福return{:hour=>9, :min=>23, :sec=>28, :year=>2017, :mon=>3, :mday=>6}
如果您觉得 Time
对象有日期和时间而 Date
只有日期令人困惑,您可以使用 DateTime
.