# module URI::Escape

`Module` for escaping unsafe characters with codes.

### Public Instance Methods

decode(*arg)
Alias for: unescape
encode(*arg)
Alias for: escape
escape(*arg) click to toggle source

## Synopsis¶ ↑

    URI.escape(str [, unsafe])

## Args¶ ↑

`str`

  `String` to replaces in.

`unsafe`

  `Regexp` that matches all symbols that must be replaced with codes. By default uses `UNSAFE`. When this argument is a `String`, it represents a character set.

## Description¶ ↑

Escapes the string, replacing all unsafe characters with codes.

This method is obsolete and should not be used. Instead, use `CGI.escape`, `URI.encode_www_form` or `URI.encode_www_form_component` depending on your specific use case.

## Usage¶ ↑

    require 'uri'

    enc_uri = URI.escape("http://example.com/?a=\11\15")
    # => "http://example.com/?a=%09%0D"

    URI.unescape(enc_uri)
    # => "http://example.com/?a=\t\r"

    URI.escape("@?@!", "!?")
    # => "@%3F@%21"

    # File lib/uri/common.rb, line 101
    def escape(*arg)
      warn "URI.escape is obsolete", uplevel: 1
      DEFAULT_PARSER.escape(*arg)
    end

Also aliased as: encode
unescape(*arg) click to toggle source

## Synopsis¶ ↑

    URI.unescape(str)

## Args¶ ↑

`str`

  `String` to unescape.

## Description¶ ↑

This method is obsolete and should not be used. Instead, use `CGI.unescape`, `URI.decode_www_form` or `URI.decode_www_form_component` depending on your specific use case.

## Usage¶ ↑

    require 'uri'

    enc_uri = URI.escape("http://example.com/?a=\11\15")
    # => "http://example.com/?a=%09%0D"

    URI.unescape(enc_uri)
    # => "http://example.com/?a=\t\r"

    # File lib/uri/common.rb, line 132
    def unescape(*arg)
      warn "URI.unescape is obsolete", uplevel: 1
      DEFAULT_PARSER.unescape(*arg)
    end

Also aliased as: decode