# File rice/url.rb, line 29 def URL.parse(urlString) urlString =~ REGEX scheme, username, password, host, port, path, argString = $2, $4, $5, $6, $8, $9, $11 # There must be a non-nil scheme, so default to http scheme ||= 'http' # Unescape username and password, if present username = CGI::unescape(username) if username password = CGI::unescape(password) if password args = nil if argString # Turn args into a hash, unescaping keys and values as we go args = Hash.new() argString.split(/&/).each { | keyval | key, val = keyval.split(/=/) args[CGI::unescape(key)] = CGI::unescape(val) } end return URL.new(scheme, host, port, path, args, username, password) end