Ich möchte regulären Ausdruck für HH: MM: SS AM/PM hier HH muss nur 1-12 sein, MM muss 60 min, SS wie üblich (60 Sek.) Ich habe es richtig ... ?regulären Ausdruck für die Zeit
Antwort
(0[1-9]|1[0-2]):([0-5][0-9]:[0-5][0-9]|(59|44|29):60) (AM|am|PM|pm)
+1 für Schaltsekunden. Du hast die AM/PM verpasst, aber das ist einfach genug. –
Sprungsekunden passieren in AM und PM abhängig von Ihrer Zeitzone (wenn Sie + GMT sind, passiert es im AM). – mynameiscoffey
brauchen nur am/pm im kleinen Fall. Current it: (0 [1-9] | 1 [0-2]): ([0-5] [0-9]): ([0-5] [0 -9] | 60) (AM | PM | am | pm) –
/^([1-9]|10|11|12):[0-5][0-9]:[0-5][0-9] [AP]M$/
Elegant! +1 der Kürze halber. –
Unterstützt nicht die in der Frage angegebene HH-Notation, aber er folgt auch, dass mit "HH 1-12 sein muss" wer weiß. Vielleicht möchten Sie auch einen Fall für Schaltsekunden hinzufügen, so selten wie sie sind. – mynameiscoffey
Es kann sicherlich kürzer gemacht werden:/^ ([1-9] | 1 [0-2]) (: [0-5] [0-9]) {2} [AP] M $/aber ich denke es macht es schwerer zu lesen. ;) –
Wenn Sie das Zero-Padding als optional sowie Schaltsekunden in der Lage sein:
/^((0?[1-9])|(1[0-2])):[0-5]\d:(([0-5]\d)|(60)) [AP]M$/
Die Aufteilung:
(0?[1-9]|1[0-2])
1-9 (mit optionaler führenden Null) oder 10-12
[0-5][0-9]
00-59 (0-5 für erste Ziffer, 0-9 für zweite)
([0-5][0-9])|(60)
Schaltsekunden
[AP]M
AM/PM
Aktualisiert, danke für den Haken - das ist es, was ich bekomme, um es nicht zuerst zu testen. – mynameiscoffey
sehr schön regexp! – jspcal
- 1. regulären Ausdruck für Passwort
- 2. Was die regulären Ausdruck für CDATA
- 3. regulären Ausdruck
- 4. regulären Ausdruck
- 5. regulären Ausdruck für Französisch Zeichen
- 6. Hilfe für einen regulären Ausdruck
- 7. Regulärer Ausdruck für die passende Zeit im Militärformat (24 Stunden)
- 8. kombinieren regulären Ausdruck
- 9. regulären Ausdruck Frage
- 10. regulären Ausdruck Telefonnummer
- 11. Google Formulare regulären Ausdruck
- 12. Kompiliert ersetzen regulären Ausdruck
- 13. MySQL regulären Ausdruck Operationen
- 14. tidyr Extrakt regulären Ausdruck
- 15. alle Vorkommen ersetzen die regulären Ausdruck
- 16. Python regulären Ausdruck für schöne Suppe
- 17. Oracle regulären Ausdruck für alphanumerische Überprüfung
- 18. regulären Ausdruck für passende Anzahl und Abstände
- 19. PHP regulären Ausdruck für starke Passwort-Validierung
- 20. regulären Ausdruck für ein Wort passenden
- 21. Verwendung von regulären Ausdruck für Spaltenfilter
- 22. Java regulären Ausdruck für String umgeben von „“
- 23. Javascript regulären Ausdruck Validierung für Domain-Namen?
- 24. einen regulären Ausdruck für nicht mit etwas
- 25. Javascript regulären Ausdruck Alternation
- 26. MySQL regulären Ausdruck entspricht
- 27. Python regulären Ausdruck Komma
- 28. Hilfe auf regulären Ausdruck
- 29. Ersetzen mit regulären Ausdruck
- 30. PHP regulären Ausdruck Hilfe
Ihre 'HH'-Notation bedeutet, dass die Stunden Null gepolstert sein und von 00 beginnen müssen, aber Sie widersprechen dies später in Ihrer Frage. Was meinst du eigentlich? Können Sie ein wenig präziser sein, vielleicht mit ein paar Beispielen für übereinstimmende und versagende Strings? –