我正在嘗試創建一個函數來告訴我時間戳是否有效。我的功能看起來像// IsTimestamp checks if a string contains a timestamp.func IsTimestamp(str string) bool { _, err := time.Parse("2006-01-02 15:04:05.999", str) if err != nil { return false } return true}2022-01-14T20:56:55Z但是,當它是有效時間戳時,傳入返回 false。我在想這可能與我在 time.Parse 中使用的布局有關,但我試過只使用日期但沒有運氣。
2 回答

不負相思意
TA貢獻1777條經驗 獲得超10個贊
您的布局與您的輸入字符串不匹配,因此預計不會成功解析。
文檔說:
Parse 解析格式化字符串并返回它表示的時間值。請參閱名為 Layout 的常量的文檔,了解如何表示格式。第二個參數必須可以使用作為第一個參數提供的格式字符串(布局)進行解析。
因此,您應該使用與您的輸入匹配的布局。下面,我使用RFC3339,這是您輸入字符串的布局。
if _, err := time.Parse(time.RFC3339, str); err != nil { ... }
https://go.dev/play/p/_Q26NS2wwfy
- 2 回答
- 0 關注
- 90 瀏覽
添加回答
舉報
0/150
提交
取消