Convertir caracteres especiales en html entities

Hola gente estoy buscando como convertir caracteres no ASCII desde un
clase cualquiera.

He econtrado esto:

Y parece que va bien, pero quería preguntar si Rails ya viene con algo
parecido… sé que tiene que tenerlo pues al precargar los campos de un
formulario escapa correctamente los caracteres problemáticos como las
comillas ‘"’

He probado con CGI::escape

CGI::escape(“hola"hola"”)
=> “hola%22hola%22”

Pero no me genera html entities.

Bueno… a ver quién el primero que me da con google en la cabeza :slight_smile:

Saludos
f.

El día 15 de mayo de 2009 0:45, Fernando G.
[email protected]
escribió:

He probado con CGI::escape

CGI::escape(“hola"hola"”)
=> “hola%22hola%22”

Joer… nada… ya me ha respondido el Alvaro B. por la lista
directa:

http://www.ruby-doc.org/core/classes/CGI.html#M000560

Lo tenía delante y ni me ha mordido ni nada.

f.

2009/5/15 Fernando G. [email protected]:

He econtrado esto:

Y parece que va bien, pero quería preguntar si Rails ya viene con algo
parecido…

Compañero :slight_smile:

Para escapar caracteres no validos en HTML como “<” Rails usa un
metodo de ERb que pone disponible en las vistas como h().

Para escapar no-ASCII en general, por ejemplo obtener “ñ” de
“ñ”, hay que usar la gema.

2009/5/15 Fernando G. [email protected]:

Sip… lo estuve mirando pero sólo convierte los <, > y los &:

HTML_ESCAPE Â Â = Â Â Â { ‘&’ => ‘&’, ‘>’ => ‘>’, ‘<’ => ‘<’, ‘"’
=> ‘"’ }

Para escapar no-ASCII en general, por ejemplo obtener “ñ” de
“ñ”, hay que usar la gema.

Al final como me dijo Alvaro B… puedo usar CGI::escapeHTML

No se si te entiendo… h() y CGI::escapeHTML hacen lo mismo.

El día 15 de mayo de 2009 12:25, Xavier N. [email protected]
escribió:>>

Al final como me dijo Alvaro B… puedo usar CGI::escapeHTML

No se si te entiendo… h() y CGI::escapeHTML hacen lo mismo.

Madre mía… tienes
razón:

ERB::Util.h(‘hóla “sí sí”’)
=> “hóla "sí sí"”
CGI::escapeHTML(‘hóla “sí sí”’)
=> “hóla "sí sí"”
ERB::Util.html_escape(‘hóla “sí sí”’)
=> “hóla "sí sí"”

En fín … que ando un poco espeso :), de todos modos esto me sirve.

Gracias again

f.

El día 15 de mayo de 2009 8:51, Xavier N. [email protected]
escribió:> Para escapar caracteres no validos en HTML como “<” Rails usa un

metodo de ERb que pone disponible en las vistas como h().

Sip… lo estuve mirando pero sólo convierte los <, > y los &:

HTML_ESCAPE = { ‘&’ => ‘&’, ‘>’ => ‘>’, ‘<’ => ‘<’, ‘"’
=> ‘"’ }

Para escapar no-ASCII en general, por ejemplo obtener “ñ” de
“ñ”, hay que usar la gema.

Al final como me dijo Alvaro B… puedo usar CGI::escapeHTML

http://www.ruby-doc.org/core/classes/CGI.html#M000560

Gracias

f.