回答
d = "26 Jun'17"
#⇒ "26 Jun'17"
▶ Date.today >= Date.parse(d.tr("'", ' '))
#⇒ false
Date#parse
理解「17年6月26日」:
▶ Date.parse d.tr("'", ' ')
#⇒ #<Date: 2017-06-26 ((2457931j,0s,0n),+0s,2299161j)>
2016年或2017年是「2016年6月16日」嗎?由於這個原因,兩位數的年份是荒謬的。在20世紀80年代和90年代,你擁有非衝突數字的奢侈品,但直到2032年,我們纔會回到正軌。 – tadman
@tadman嗯,整個Rails Colossus建立在_conventions_的地下室。畢竟'01/02/2016'具有相同的含糊性。 'DateTime'將XX Jun YY'視爲「當前世紀的YY,今年XX,XX日」,我們可能應該考慮使用它。 – mudasobwa
@tadman人們應該使用數字來代替天數,字母數月和羅馬字符多年:'6月17日MMXVI'。 – mudasobwa
將其轉換爲DateTime對象,並且然後與其他日期時間對象?
time_one = DateTime.new(2001,2,3)
time_two = DateTime.new(2001,1,3)
time_one > time_two
您可以使用Date
模塊從Ruby的標準庫來解析您的日期字符串,然後使用<=>
比較。
順便說一句,如果你是在一個「純」紅寶石的環境中工作(不是Rails的控制檯),你不得不把它列入到你的代碼:
require 'date'
Date.parse("26 Jun'17") > Date.today # => true
- 1. 如何檢查日期是否已過
- 2. 驗證日期已過期與當前系統日期
- 3. 如何驗證生日是否通過?
- 4. Javascript表單驗證,檢查日期是否通過
- 5. 我應該如何檢查到期日是否已過期?
- 6. javascript驗證日期過去
- 7. 如果輸入日期是過去的Javascript日期驗證
- 8. 檢查日期是否已過 - Swift
- 9. php檢查日期是否已過去
- 10. strtotime日期驗證通過無效日期
- 11. Firebase身份驗證UID是否過期?
- 12. 如何知道在php中是否已經過期/過期?
- 13. 如何驗證結束日期是否大於開始日期?
- 14. 如何檢查GoogleCredential是否已過期
- 15. 如何繞過證書驗證數字簽名時驗證已過期
- 16. 如何驗證是否具體日期是星期一在php
- 17. 證書已過期?
- 18. javascript日期驗證,以檢查它是否超過下一年的日期
- 19. 如何通過屬性驗證一個日期是否比我的MVC模型中的其他日期更長?
- 20. 如何通過按日期
- 21. 如何通過日期
- 22. 如何通過日期
- 23. 如何通過日期
- 24. 如何通過日期
- 25. 需要幫助驗證日期是否過去使用javascript
- 26. 連續檢查的日期是否已經過期
- 27. ServiceStack Jwt身份驗證檢查是否已通過驗證
- 28. 如何知道Kerberos票證是否已過期
- 29. 日期比較 - 如何檢查20分鐘是否已過?
- 30. 檢查日期是否已過期Laravel日期字段類型SQL
的可能的複製[紅寶石解析日期字符串] (http://stackoverflow.com/questions/21391953/ruby-parse-date-string) –
我已經看到了很多狂野和狡猾的日期格式,但那是一個真正令人困惑的尷尬。 – tadman
我不想將此標記爲提名示例的副本,因爲該問題已關閉。不過,我認爲這個問題還不清楚。你是否想要解析日期字符串,或者檢查日期是否過期,或兩者兼得?如果您需要幫助檢查它是否過期,那麼「過期」是什麼意思?這是否意味着你需要知道日期是否比某個恆定的日期更早?或者說它比今天更古老呢? –