Parse Parameter aus URL in Lua

Ich habe eine URL und möchte deren Parameter daraus analysieren, wie:

function unescape (s)
  s = string.gsub(s, "+", " ")
  s = string.gsub(s, "%%(%x%x)", function (h)
        return string.char(tonumber(h, 16))
      end)
  return s
end

function parseurl (s,param)
for k, v in string.gmatch( s, "([^&=?]+)=([^&=?]+)" ) do
    --t[k] = v
    if k == param then
        --print (k.." "..v)
        return unescape(v)
    end
end

s = "http://www.page.com/link.php uname=Hans+Testmann&uemail=myemail%40gmail.com&utext=Now+this+is+working+great.%0D%0A++&mdt=1#&mydays:themeupload"s

Than würde ich es nennen und Ergebnisse wie nach ->

parseurl (s, "uname")      --> "Hans Testmann"
parseurl (s, "uemail")     --> "[email protected]"
parseurl (s, "utext")      --> "Now this is working great"

Ich habe schon viel repariert und scheint zu funktionieren, aber könntest du nachsehen, wie es möglich ist, sich zu verbessern?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage