ruby - soporta - optimizar consultas mysql explain
Cadena de fecha de anĂ¡lisis en Ruby (1)
Tengo un String 20120119
que representa una fecha en el formato ''YYYYMMDD''
.
Quiero analizar esta cadena en un objeto Ruby que represente una fecha para poder hacer un cálculo de fecha básico, como por ejemplo, diff contra la fecha de hoy.
Estoy usando la versión 1.8.6 (requisito).
Puede usar el método Date.strptime
proporcionado en la Biblioteca estándar de Ruby:
require ''date''
string = "20120723"
date = Date.strptime(string,"%Y%m%d")
Alternativamente, como se sugiere en los comentarios, puede usar Date.parse
, porque las heurísticas funcionan correctamente en este caso:
require ''date''
string = "20120723"
date = Date.parse(string)
Ambos generarán un ArgumentError
si la fecha no es válida:
require ''date''
Date.strptime(''2012-March'', ''%Y-%m'')
#=> ArgumentError: invalid date
Date.parse(''2012-Foo'') # Note that ''2012-March'' would actually work here
#=> ArgumentError: invalid date
Si también desea representar horas, minutos, etc., debe consultar DateTime . DateTime también proporciona un método de parse
que funciona como el método de análisis en Date
. Lo mismo ocurre con strptime
.