0
我有一些問題需要定義小時時間,我想將小時時間分爲早上,晚上和晚上三種時間類型。 如果時間從00:00開始到10:00,類型時間是早上, 如果時間從10:01到18:00開始,類型時間是晚上, 如果時間從18:01開始到23:59,類型時間是晚上, 我有代碼的jQuery這樣如何在javascript時間格式中分隔正則表達式
$(document).ready(function(){
$('#submit').on('click',function(){
var hrs=$('#hours').val();
var nm=$('#scedule').val();
var patt = new RegExp("^([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$");
var patts = patt.test(hrs);
//morning = 00:00 - 10:00
var morn = new RegExp("^([0-9]|0[0-9]|1[0-9]):[0-5][0-9]$");
var morning = morn.test(hrs);
//evening = 10:01 - 18:00
var even = new RegExp("^(1[0-9]|[0-9]):[0-5][0-9]$");
var evening = even.test(hrs);
//night = 18:01 - 00:00
var nig = new RegExp("^(1[0-9]|2[0-3]):[0-5][0-9]$");
var night = nig.test(hrs);
if (patts == morning) {
alert('This is Morning');
} else if (patts == evening){
alert('This is Evening');
} else if (patts == night){
alert('This is night');
} else {
alert('Format is wrong');
}
});
});
,這是我的HTML表單:
Scedule : <input type="text" id="scedule"><br>
Time : <input type="text" id="hours"><br>
<input type="submit" value="submit" id="submit"><br>
爲什麼你需要一個正則表達式呢?你可以簡單地使用if(hrs <=「10:00」),if(hrs>「10:00」&& hrs <=「18:00」)','if(hrs>「18:00」 )'? – wdosanjos
@wdosanjos這是因爲lt和gt運算符在數字字符串上工作得不好。例如,「9:00」>「10:00」將是真實的。 –
@RoryMcCrossan明白了。在測試之前,使用正則表達式可能更容易規範化字符串if(hrs.length <5)hrs ='0'+ hrs'。 – wdosanjos