[英]How to parse golang time
我有这个日期“ 2019年4月25日上午01:01”
“ 2019年5月11日上午07:28”
“ 2019年8月26日上午11:07”
“ 2019年7月31日01:26 PM”
等等...
我的尝试
timeStr = strings.Replace(timeStr,"th","",1)
timeStr = strings.Replace(timeStr,"st","",1)
timeStr = strings.Replace(timeStr,"rd","",1)
timeStr = strings.Replace(timeStr,"nd","",1)
time.Parse("2 January 2006 15:04 PM",timeStr)
但这是错误的,因为它可以删除月份中的字符
这个怎么样?
if d := timeStr[1]; d >= '0' && d <= '9' {
// 2-digit day
timeStr = timeStr[:2] + timeStr[4:]
} else {
// 1-digit day
timeStr = timeStr[:1] + timeStr[3:]
}
可以使用正则表达式来做这种事情。
re := regexp.MustCompile(`^(\d{1,2})(th|st|rd|nd)`)
re.ReplaceAllString("31st July 2019 01:26 PM", "$1")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.