andi123: Regex für Uhrzeit gesucht

Beitrag lesen

Hallo,

ich dachte ich wäre für einfache Regex-Aufgaben ganz fit, muß nun aber sehen, dass mir aber schon bei einer Uhrzeit-Regex die Ideen ausgehen.

Aufgabe ist zu testen, ob die Uhrzeit im folgenden Format vorliegt und die Werte fuer die Uhrzeit speichern: hh:mm:ss, wobei :ss optional ist.

Das Problem was ich habe ist, der Test auf die optionalen Sekundenangabe.

Ich hab das so loesen wollen: [1]?[0-9]:[0-5]0-9?$

Mit dem "?" am Ende wollte ich testen das ":ss" kein- oder max. einmal als Sekunden vorhanden sind.
Stimmt das so, wie ich es angegeben habe oben? Wie speichere ich dann aber die Werte fuer die Zeiten? Also in obigen Bsp. waere in $1 jetzt zwar, wenn Sekunden mit angegeben sind, die Sekunden INKL. dem ":" drin, aber ich hab die Klammern eigentlich nur drumgemacht, damit das folgende "?" weiss, auf was es sich beziehen soll.
Ausserdem woellt ich das ":" nicht mit drinhaben in $1.

Wie muss ich das richtig angeben?

Ideal waere auch noch, wenn man abfragen koennte, dass z.b. "wenn die Uhrzeit mit 2 Stellen angegeben ist, die erste Stelle nur 0,1 oder 2 sein kann".
Ich weiss das es geht, wuesste aber keinen Ansatz bzw. wonach ich suchen muesste, um mich da einzuarbeiten.

Vielen Dank
Andi


  1. 012 ↩︎