Evaluación de cadenas a posteriori

¿hay alguna forma de expandir cadenas a posteriori?

s=’#{n}’
n=‘pepe’

expandir s
=> ‘pepe’ # se ha hecho la evaluación de #{n} en s

gracias

On Thu, Jun 5, 2008 at 9:43 AM, Rafa C. [email protected] wrote:

¿hay alguna forma de expandir cadenas a posteriori?

s=‘#{n}’
n=‘pepe’

expandir s
=> ‘pepe’ # se ha hecho la evaluación de #{n} en s

Poder se puede:

irb(main):001:0> s = ‘#{n}’
=> “#{n}”
irb(main):002:0> n = ‘pepe’
=> “pepe”
irb(main):003:0> eval %Q(“#{s}”)
=> “pepe”

pero… no querras un hash?

No, me interesa para hacer una plantilla y no tener que cargarla de
disco
cada vez que la necesite.

¡Gracias!

El día 5 de junio de 2008 10:46, Xavier N. [email protected]
escribió:

Algo como esto no te sirve?

template = File.read(“template.html.erb”)
result = ERB.new(template).result(binding)

On Thu, Jun 5, 2008 at 10:52 AM, Rafa C. [email protected] wrote:

No, me interesa para hacer una plantilla y no tener que cargarla de disco
cada vez que la necesite.

La solucion canonica ahi es un sistema de plantillas.

hmmm… supongo que esto es cargar un fichero como

<%=texto%>

y evaluarlo con .result ¿no?

si, creo que también me vale

muchas gracias

El día 5 de junio de 2008 11:21, Francesc E. <
[email protected]> escribió:

On Jun 5, 2008, at 11:32 AM, Rafa C. wrote:

hmmm… supongo que esto es cargar un fichero como

texto

texto = “Definimos un texto”

Leemos el fichero

template = File.read("template.html.erb)

Lo integramos con la plantilla

result = ERB.new(template).result(binding)

And so on … :wink: