Me gustaría comprobar el formato iso8601 para la fecha ingresada en ruby, como start_date = "2011/05/05" debe coincidir para el formato 2011-05-05T00: 00: 00-04: 00 y se devuelven los errores en consecuencia. ¿Deberíamos usar regex aquí o hay algún método para esto?Cómo hacer coincidir el formato de zona horaria YYYY-MM-DDThh: mm: ssTZD en ruby
6
A
Respuesta
8
suena como usted quiere Time.iso8601
:
require 'time'
iso = Time.iso8601(start_date)
Ver this blog post para más información.
EDIT: He aquí un pequeño programa de prueba, pero completo que trabaja:
require 'time'
text = "2011-05-05T00:00:00-04:00"
parsed = Time.iso8601(text)
puts parsed
Salida:
Thu May 05 04:00:00 UTC 2011
3
Para la validación de expresiones regulares (con microsegundos opcionales y zona horaria) usan:
^(-?(?:[1-9][0-9]*)?[0-9]{4})-(1[0-2]|0[1-9])-(3[0-1]|0[1-9]|[1-2][0-9])T(2[0-3]|[0-1][0-9]):([0-5][0-9]):([0-5][0-9])(\.[0-9]+)?(Z|[+-](?:2[0-3]|[0-1][0-9]):[0-5][0-9])?$
Prueba en: http://rubular.com/r/qFFrhzvdsS
No se recomienda en las secuencias de comandos cuando el rendimiento importa!
Cuestiones relacionadas
- 1. Cómo convertir el tiempo en formato YYYY-MM-DDTHH: mm: ss.SSSZ en la zona horaria predeterminada?
- 2. Como llegar DateTime.Now() en AAAA-MM-DDThh: mm: ssTZD usando C#
- 3. zona horaria local en Ruby
- 4. ¿Cómo modifico la zona horaria de un DateTime en Ruby?
- 5. Problema de zona horaria en Android
- 6. Cuál es el patrón correcto para analizar el formato de zona horaria con SimpleDateFormat
- 7. Java GregorianCalendar Zona horaria
- 8. conversión de cadena hasta la fecha con zona horaria
- 9. Cómo guardar correctamente una zona horaria con Ruby y MongoId?
- 10. Cómo convertir DateTime en zona horaria específica?
- 11. git: zona horaria y la fecha y hora formato
- 12. ruby get Tiempo en la zona horaria dada
- 13. Cadena de formato a fecha y hora con zona horaria
- 14. Cómo convertir el tiempo de fecha de una zona horaria a otra zona horaria
- 15. Cómo obtener la zona horaria de las propiedades en CultureInfo
- 16. obtener usuario zona horaria
- 17. ajustar la zona horaria
- 18. Cambiar zona horaria en Tomcat
- 19. ¿Cómo imprimo elegantemente el formato% z (zona horaria) en Perl en Windows?
- 20. ¿Cómo calculo el desplazamiento, en horas, de una zona horaria dada de UTC en ruby?
- 21. zona horaria local del dispositivo
- 22. postgres zona horaria predeterminada
- 23. zona horaria por Coordinar
- 24. Python Zona horaria conversión
- 25. java incorrecta zona horaria
- 26. .NET Obtener el desplazamiento de zona horaria por nombre de zona horaria
- 27. ¿Cómo obtener la zona horaria del cliente?
- 28. Cómo obtener clientes Zona horaria en JavaScript?
- 29. ¿Cómo cambio la zona horaria en CakePHP?
- 30. Configuración zona horaria en Python
aclaraciones ... Si proporciono texto = "2011-02-30T00: 00: 00" analizado = Time.iso8601 (texto) da => miércoles mar 02 00:00:00 +0000 2011, ajustando la fecha, ¿Podemos evitar esto y arrojar errores? ¿Voy por la validación personalizada o está disponible. También Time.iso8601 (texto) bloquea la aplicación cuando se proporciona una fecha no válida, podemos simplemente devolver booleano después de hacer coincidir ... – Bijendra