Hallo,
ich brauch einen regulären Ausdruck für eine Zeit/einen Interval. Der Benutzer soll 1359 eingeben, per regex möchte ich 13:59:00 erhalten. Gibt der Benutzer 135921 ein, wird folgerichtig 13:59:21 erkannt. Die Sekunden sind optional.
Da es sich nicht um eine Uhrzeit handelt, kann der Stundenanteil 24 überschreiten: 11359 sollte 113:59:00 werden.
Mein aktueller Ausdruck packt 11359 überhaupt nicht, 1135900 wird umgesetzt.
Code:
var matches=test.match(/^(-?)((\d{1,})([:]?)(\d{2}))([:]?)(\d{2}?)/);
alert(matches);
if(matches && matches[5] <60 && (''==matches[7] || matches[7] <60)){
obj.value=matches[1]+matches[3]+':'+matches[5]+':'+(''==matches[7]?'00':matches[7]);
}
Hat jemand eine Idee oder einen kleinen Tipp für mich? Besten Dank schon mal im voraus.