([1-9]|1[0-2]|0[1-9]):([0-5][0-9]) (AM|PM|am|pm)
時間係数には正規表現を使用しています。例:HH:MMpm。
ここで、この正規表現を使用する必要があります。
サンプルコード:
if(currentVal.match(/([1-9]|1[0-2]|0[1-9]):([0-5][0-9]) (AM|PM|am|pm)/g) != currentVal) {
alert("Invalid time.");
}
var parts = currentVal.split(" ");
var parts = currentVal.split(":");
parts[0] = parseInt(parts[0]);
parts[1] = parseInt(parts[1]);
if(parts[0] == 12) {
parts[0] = 0;
}
if(parts[1].toLowerCase() == 'pm') {
parts[0] += 12;
}
ここで、私の間違いはparseInt(parts[1])
; 正規表現には「:」と「スペース」と「(AM | PM | am | pm)」があるためparts[1]
、小文字では変換されません。
誰かがこの正規表現を使用するのを手伝ってもらえますか?