Ruby:
Interpolación de cadenas de texto
Cómo hacerlo:
Aquí tienes algunos ejemplos de cómo interpolamos cadenas en Ruby. Recuerda, todo lo que está dentro de #{}
se evalúa y se convierte a una cadena.
nombre = "Mundo"
saludo = "Hola, #{nombre}!"
puts saludo # => Hola, Mundo!
edad = 28
mensaje = "En 10 años tendrás #{edad + 10} años."
puts mensaje # => En 10 años tendrás 38 años.
precio = 5.99
producto = "café"
informe = "El precio del #{producto} es $#{'%.2f' % precio}."
puts informe # => El precio del café es $5.99.
Conocimiento Detallado:
Interpolar una cadena es una función que Ruby maneja elegantemente. Surgió como una mejor alternativa a la concatenación, que era más verbosa y propensa a errores.
Alternativas:
- Concatenación:
saludo = 'Hola, ' + nombre + '!'
sprintf
o el métodoformat
:mensaje = sprintf('En %d años tendrás %d años.', 10, edad + 10)
- La función
concatenate
:puts 'Hola, ' << nombre << '!'
Detalles de implementación: Ruby convierte lo que esté dentro de #{}
a una cadena llamando al método .to_s
sobre la expresión resultante. Si la cadena original está entre comillas simples, la interpolación no funcionará; debe estar entre comillas dobles o usar sintaxis de literales de cadena como %Q{}
.
Ver También:
- La documentación oficial de Ruby sobre literales de cadena
- Ejemplo de libro: “The Well-Grounded Rubyist” de David A. Black, que aborda el tratamiento de cadenas en Ruby y prácticas recomendadas.