CGI.escapeHTML
es bastante malo, pero CGI.unescapeHTML
está completamente remendado. Por ejemplo:¿Hay una mejor herramienta para escanear y escanear HTML que CGI para Ruby?
require 'cgi'
CGI.unescapeHTML('…')
# => "…" # correct - an ellipsis
CGI.unescapeHTML('…')
# => "…" # should be "…"
CGI.unescapeHTML('¢')
# => "\242" # correct - a cent
CGI.unescapeHTML('¢')
# => "¢" # should be "\242"
CGI.escapeHTML("…")
# => "…" # should be "…"
Parece que unescapeHTML
sabe acerca de todos los códigos numéricos más &
, <
, >
y "
. Y escapeHTML
solo conoce esos cuatro últimos, no hace ninguno de los códigos numéricos. Entiendo que, por lo general, el escapado no tiene que ser tan sólido, ya que HTML permitirá las versiones literales de la mayoría de los caracteres, excepto los cuatro que conoce CGI.escapeHTML
. Pero la eliminación del vacío realmente debería ser mejor.
¿Hay alguna herramienta mejor, al menos para quitar el vacío?
No maneja — tampoco. – Chloe