Análisis y formateo
strftime y strptime
Análisis y formateo es una lección gratuita de Ruby Academy en CoddyKit. Esta es la lección 2 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Ruby Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Ruby Academy incluye 4 lecciones en total.
Dar formato con strftime
strftime convierte un Time o Date en una cadena con formato mediante directivas de formato que comienzan por %.
t = Time.new(2026, 5, 30, 14, 5, 9)
puts(t.strftime('%Y-%m-%d'))
puts(t.strftime('%H:%M:%S'))Directivas de fecha comunes
Directivas de fecha útiles:
%Yaño de 4 dígitos,%yde 2 dígitos%mnúmero del mes,%Bnombre completo del mes%ddía del mes,%jdía del año
t = Time.new(2026, 5, 30)
puts(t.strftime('%B %d, %Y'))
puts(t.strftime('%y/%m/%d'))Directivas de hora comunes
Directivas de reloj útiles:
%Hformato de 24 horas,%Iformato de 12 horas%Mminutos,%Ssegundos%pAM/PM
t = Time.new(2026, 5, 30, 14, 30)
puts(t.strftime('%I:%M %p'))
puts(t.strftime('%H:%M'))Días de la semana y nombres
%A es el nombre completo del día de la semana y %a, su abreviatura. %b es el nombre abreviado del mes.
t = Time.new(2026, 5, 30)
puts(t.strftime('%A'))
puts(t.strftime('%a %b %d'))Relleno y marcas
Inserte marcas entre % y la directiva: - elimina el relleno, 0 rellena con ceros y _ rellena con espacios.
t = Time.new(2026, 5, 5, 9, 0)
puts(t.strftime('%-d/%-m'))
puts(t.strftime('%H:%M'))Salida ISO 8601
Para obtener marcas de tiempo interoperables, use iso8601 o el patrón %FT%T%z. ISO 8601 es el estándar para las API.
require 'time'
t = Time.new(2026, 5, 30, 14, 0, 0, '+00:00')
puts(t.utc.iso8601)Analizar con Date.parse
Date.parse lee muchos formatos habituales de cadenas de fecha e intenta deducir la estructura. Es práctico, pero permisivo.
require 'date'
puts(Date.parse('2026-05-30'))
puts(Date.parse('30 May 2026'))Analizar con Time.parse
Importe time para añadir Time.parse, que lee marcas de tiempo completas, incluida la hora.
require 'time'
t = Time.parse('2026-05-30 14:30:00')
puts(t.hour)
puts(t.min)Análisis estricto con strptime
Cuando conozca el formato exacto, use strptime. Utiliza las mismas directivas que strftime y falla si la entrada no coincide, lo que resulta más seguro.
require 'date'
d = Date.strptime('30/05/2026', '%d/%m/%Y')
puts(d.year)
puts(d.month)strptime para Time
Time.strptime analiza una marca de tiempo con un formato conocido y la convierte en un Time.
require 'time'
t = Time.strptime('2026-05-30 14:05', '%Y-%m-%d %H:%M')
puts(t.hour)
puts(t.min)parse frente a strptime
Regla práctica:
- Use
parsepara texto flexible introducido por personas - Use
strptimecuando el formato sea fijo y quiera rechazar cualquier otra cosa
require 'date'
puts(Date.parse('May 30 2026').iso8601)
puts(Date.strptime('2026-05-30', '%Y-%m-%d').iso8601)Comprobación rápida
¿Qué directiva produce un valor de 24 horas con ceros iniciales en strftime?
Resumen: análisis y formato
Puede convertir entre cadenas y fechas en ambos sentidos:
strftimeaplica formato mediante directivas%%Y %m %d %H %M %S %A %By marcasparsees flexible ystrptimees estricto- Use
iso8601para obtener una salida adecuada para las API
require 'date'
puts(Date.strptime('2026-05-30', '%Y-%m-%d').strftime('%A, %B %-d'))Preguntas frecuentes
¿La lección «Análisis y formateo» es gratis?
Sí — el texto completo de «Análisis y formateo» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Ruby Academy, actualiza a CoddyKit PRO. El curso de Ruby Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Análisis y formateo»?
strftime y strptime Practicas Ruby Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Ruby Academy?
No se requiere experiencia previa. Ruby Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 4.
¿Cuánto tiempo toma la lección «Análisis y formateo»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Ruby Academy?
Sí. Cada lección de Ruby Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Clases de fecha y hora
- Análisis y formateo
- Aritmética temporal
- Zonas horarias