Quiero expresión regular para HH: MM: SS AM/PM aquí HH debe ser 1-12 solamente, MM debe 60 min, SS como de costumbre (60 seg.) Tengo cualquiera correctamente ... ?expresión regular por tiempo
Respuesta
(0[1-9]|1[0-2]):([0-5][0-9]:[0-5][0-9]|(59|44|29):60) (AM|am|PM|pm)
+1 por segundos intercalares. Te perdiste el AM/PM, pero eso es bastante fácil. –
Los segundos interminables suceden tanto en AM como en PM, según su zona horaria (si es + GMT ocurre en AM). – mynameiscoffey
solo necesita am/pm en caso pequeño Curríquelo: (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$/
Elegante! +1 por brevedad. –
No es compatible con la notación HH dada en la pregunta, aunque él también sigue eso con "HH debe ser 1-12" así que quién sabe. También es posible que desee agregar un caso de segundos intercalares, tan raros como son. – mynameiscoffey
Sin duda se puede acortar:/^ ([1-9] | 1 [0-2]) (: [0-5] [0-9]) {2} [AP] M $/pero creo que hace que sea más difícil de leer. ;) –
Si usted quiere ser capaz de tener el relleno de ceros como opcionales, así como los segundos intercalares:
/^((0?[1-9])|(1[0-2])):[0-5]\d:(([0-5]\d)|(60)) [AP]M$/
El desglose:
(0?[1-9]|1[0-2])
1-9 (con la opción de cero) o 10-12
[0-5][0-9]
00-59 (0-5 para el primer dígito, 0-9 para el segundo)
([0-5][0-9])|(60)
Segundos de salto
[AP]M
AM/PM
Actualizado, gracias por la captura; eso es lo que obtengo por no probarlo primero. – mynameiscoffey
muy buena expresión regular! – jspcal
- 1. expresión regular "contiene" otra expresión regular
- 2. ¿Expresión regular para encontrar una expresión regular?
- 3. encontrar por la expresión regular con Casbah
- 4. Email expresión regular
- 5. ¿Hay una expresión regular para detectar una expresión regular válida?
- 6. Comprueba si una expresión regular cubre otra expresión regular
- 7. Rompecabezas de expresión regular
- 8. Expresión regular [Cualquier número]
- 9. Expresión regular al inglés
- 10. expresión regular \ Z (? Ms)
- 11. Expresión regular para alfanumérico
- 12. expresión regular sin caracteres
- 13. Expresión regular para Dummys
- 14. Longitud mínima Expresión regular
- 15. Expresión regular de Python
- 16. Expresión regular opuesta
- 17. expresión regular lookahead negativo
- 18. R- cuestión expresión regular
- 19. expresión regular para DOT
- 20. Expresión regular reemplazar
- 21. Problema de expresión regular
- 22. Expresión regular: rango numérico
- 23. Mercurial .hgignore expresión regular
- 24. Simplifique esta expresión regular
- 25. c expresión regular howto
- 26. expresión regular en iOS
- 27. Netbeans multilínea Expresión Regular
- 28. expresión regular con -, ::, (y)
- 29. Expresión regular para eliminar metadatos
- 30. generador/reductor de expresión regular?
Su notación 'HH' implica que las horas deben ser acolchadas con cero y comenzar desde 00, sin embargo, usted contradice esto más adelante en su pregunta. ¿Qué quieres decir? ¿Puede ser un poco más preciso, quizás con algunos ejemplos de cadenas coincidentes y fallidas? –