Method: CGI::Util#escapeURIComponent
- Defined in:
- lib/cgi/util.rb
#escapeURIComponent(string) ⇒ Object Also known as: escape_uri_component
URL-encode a string following RFC 3986 Space characters (+“ ”+) are encoded with (+“%20”+)
url_encoded_string = CGI.escapeURIComponent("'Stop!' said Fred")
# => "%27Stop%21%27%20said%20Fred"
41 42 43 44 45 46 47 48 |
# File 'lib/cgi/util.rb', line 41 def escapeURIComponent(string) encoding = string.encoding buffer = string.b buffer.gsub!(/([^a-zA-Z0-9_.\-~]+)/) do |m| '%' + m.unpack('H2' * m.bytesize).join('%').upcase end buffer.force_encoding(encoding) end |