我需要一個正則表達式來限制0-24小時的輸入,其中小數的倍數爲.25。請記住以下條件必須滿足:正則表達式允許15分鐘增量的小時數
- 當整體的一部分是0-23位,小數部分可能是2.0,1.25,0.5或0.75
- 當整體的一部分是24 ,小數部分可以是0.0
- 當沒有整體的一部分存在時,小數部分必須是0.0,0.25,0.5,或0.75
- 空字符串不允許
我我非常有信心可以收緊以下表達方式,但這就是現實ce到目前爲止:
(^(([0-9])|(1[0-9])|(2[0-3]))(\.((0*)|(250*)|(50*)|(750*)))?$)|(^24(\.0*)?$)|(^\.((0+)|(250*)|(50*)|(750*))$)
更新:正則表達式驗證存在於客戶端(javascript)和服務器(asp.net,c#)上。
讓24.0和0.0一樣不合邏輯,因爲它們是同一時間。 – caf 2009-07-26 22:04:34
@caf:除非你正在註冊持續時間而不是時間。小時登記系統,每天或某物。我衷心希望沒有人會需要使用「24」選項:) – Thorarin 2009-07-26 22:15:07
當然,但0.0長度的預訂聽起來有點魚腥。 – caf 2009-07-27 03:58:13