2
У меня есть URL-адрес, и хотел бы разобрать его параметр из него, как:параметры Разбор из URL в Lua
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
Чем я назвал бы его и получить результат, как после ->
parseurl (s, "uname") --> "Hans Testmann"
parseurl (s, "uemail") --> "[email protected]"
parseurl (s, "utext") --> "Now this is working great"
Я уже много исправил и, кажется, работает, , но вы могли бы посмотреть, как его можно улучшить?
Пожалуй http://codereview.stackexchange.com/. – lhf
Первый случай «uname» не работает. Вам нужно удалить URL-адрес для работы gmatch. Добавьте эту строку в parseurl() перед циклом for: s = s: match ('% s + (. +)') – tonypdmtr