Interpolación de cadena de rubí

Interpolación de cadena de rubí
La interpolación de cadena se refiere al proceso de agregar marcadores de posición que hacen referencia a otros valores en un objeto de cadena. Los valores interpolados en una cadena se evalúan a sus valores correspondientes. La interpolación de la cadena puede verse como una forma de inyección de plantilla.

En esta guía, discutiremos cómo interpolar cadenas en el lenguaje de programación de Ruby.

Usando + operador

La forma más fácil de interpolar los valores en una cadena literal es usar el operador de adición. Considere el ejemplo que se muestra a continuación:

nombre = "Alice"
pone "hola" + nombre

En el ejemplo anterior, declaramos una variable llamada nombre. Contiene el valor "Alice". Usando el operador de adición, lo interpolamos en un valor de cadena.

El intérprete de Ruby obtendrá el valor referenciado por el nombre de la variable y lo usará como el valor real. La salida resultante es como se muestra:

$ Ruby Interpolation.RB
Hola Alice

El operador de adición contiene un inconveniente al interpolar las variables en una cadena. Solo funciona con objetos de cadenas.

Tome el ejemplo a continuación:

edad = 10
pone "soy" + edad + "años de edad"

Si intenta ejecutar dicha operación, Ruby devolverá un TypeError

'+': Sin conversión implícita de nulo en String (typeError)

Una forma de resolver este problema es convertir la variable en una cadena utilizando el método TO_S.

Por ejemplo:

edad = 10
pone ("soy" + edad.to_s + "años de edad")

Ahora podemos inyectar la variable entera en la cadena lanzándola como una cadena.

Utilizando el << Operator

El operador de cambio de izquierda funciona de manera similar al operador de adición. Inyecta la variable pasada en una cadena literal.

Ejemplo:

lang = "Ruby"
pone lang << " is an fun!"

Similar al operador de adición, debe convertir la variable en una cadena para evitar typeErrors.

Usando #

Los dos métodos que discutimos anteriormente tienen un solo inconveniente; se complica realizar una expresión dentro de una cadena literal.

Echa un vistazo al ejemplo a continuación:

radio = 7.43
pone "el área de la cirlcle de radio" + radio.to_s + "es" + radio * radio * 3.141 + "CM2"

La operación anterior no es posible utilizando los métodos que discutimos anteriormente.

Para resolver esto, podemos usar el operador de sustitución de expresión en Ruby:

La sintaxis es como:

#variable

Ponemos la variable o expresión dentro del par de aparatos ortopédicos rizados. Ruby evaluará la expresión e interpolará en la cadena.

Considere el ejemplo anterior utilizando el operador de interpolación.

radio = 7.43
Pone "El área de la Cirlcle of Radius #Radius es #Radius * Radius * 3.141 CM2 "

Eso es mucho mejor. Usando la notación anterior, podemos inyectar una única variable y expresiones de rubí válidas dentro de una cadena.

A continuación se muestra la salida resultante:

$ Ruby Subcuby.RB
El área de la Cirlcle of Radius 7.43 es 173.3985909 cm2

En este caso, no tenemos que realizar la expresión, convertirla en una cadena y luego interpolarla en la cadena.

Usando este método, Ruby se encargará de todo.

Conclusión

Esta guía ha ilustrado cómo trabajar con la interpolación de cadenas en el lenguaje Ruby utilizando características como el operador de adición, el cambio de izquierda y el operador de sustitución de expresiones.