# 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")
    p enc_uri
    # => "http://example.com/?a=%09%0D"

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

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

    # File lib/uri/common.rb, line 102
    def escape(*arg)
      warn "#{caller(1)[0]}: warning: URI.escape is obsolete" if $VERBOSE
      DEFAULT_PARSER.escape(*arg)
    end

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

## Synopsis¶ ↑

    URI.unescape(str)

## Args¶ ↑

`str`

  Unescapes the string.

## Usage¶ ↑

    require 'uri'

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

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

    # File lib/uri/common.rb, line 128
    def unescape(*arg)
      warn "#{caller(1)[0]}: warning: URI.unescape is obsolete" if $VERBOSE
      DEFAULT_PARSER.unescape(*arg)
    end

Also aliased as: decode