instance method
CGI::Escape#escapeHTML
(::string str) -> ::String
escapeHTML(string)
lib/cgi/escape.rb
View on GitHub ↗
# File tmp/rubies/ruby-4.0.0/lib/cgi/escape.rb, line 91
def escapeHTML(string)
enc = string.encoding
unless enc.ascii_compatible?
if enc.dummy?
origenc = enc
enc = Encoding::Converter.asciicompat_encoding(enc)
string = enc ? string.encode(enc) : string.b
end
table = Hash[TABLE_FOR_ESCAPE_HTML__.map {|pair|pair.map {|s|s.encode(enc)}}]
string = string.gsub(/#{"['&\"<>]".encode(enc)}/, table)
string.encode!(origenc) if origenc
string
else
string = string.b
string.gsub!(/['&\"<>]/, TABLE_FOR_ESCAPE_HTML__)
string.force_encoding(enc)
end
end
Escape special characters in HTML, namely '&\"<>
Example
CGI.escapeHTML('Usage: foo "bar" <baz>') # => "Usage: foo "bar" <baz>"
See also
#escape_html
#escape_uri_component
#escapeElement
#escapeURIComponent
also in
4.1 · 3.4 · 3.3 · 3.2 · 3.1 · 3.0