module Rack::Utils

UTF-8 で match させるようにする

Public Class Methods

escape(s) click to toggle source
# File lib/jpmobile/rack.rb, line 35
def escape(s)
  s.to_s.gsub(%r([^ a-zA-Z0-9_.-]+)/) {
    '%'+$1.unpack('H2'*bytesize($1)).join('%').upcase
  }.tr(' ', '+')
end
unescape(s) click to toggle source
# File lib/jpmobile/rack.rb, line 41
def unescape(s)
  s.tr('+', ' ').gsub(%r((?:%[0-9a-fA-F]{2})+)/){
    [$1.delete('%')].pack('H*')
  }
end