如何在 Go 分析非标准日期/时间字符串。例如,如果我想将字符串10/15/1983转换为time.Time? 该time.Parse()函数应允许您指定格式。! x2 L6 w. L$ n) w$ ?: t/ h
http://play.golang.org/p/v5DbowXt1x' i) B! o& f" L5 H
这导致恐慌。: x3 |; u. C8 I0 { E( x
panic: parsing time "10/15/1983" as "10/15/1983": cannot parse "" as "0/"从逻辑上讲,这是合理的,因为它应该如何知道哪一天是哪个月。5 K0 e2 M4 H; W- ]0 F+ b
其它语言具有以下功能:& d" h4 A& C) j. f( z: X
parse("mm/dd/yyyy","10/15/1983")我在 Go 文档中找不到这样的函数是我唯一的正则表达选择吗?9 Y8 }6 y6 r' J& I
因此,无论何时您的格式指定年份,都应使用06或2006完成,秒由05或5指定,时区指定为MST”、“Z0700”、“Z07:00” “、”-0700”、”-07” 或 “-07:00”。若引用常量列表,则可将需要分析的任何标准格式放在一起。. v' R+ T b9 N* j( i! N. Z; a
例如,如果你想分析Common Log Format 中间的日期/时间,即 Apache 用于其日志文件的格式,您可以串以下字符time.Parse()作为布局实现参数传递。 ( ^! d2 K+ y C% P
"02/Jan/2006:15:04:05 -0700" : ~+ `% s$ ]1 D( d