2015-12-17 64 views
2

我想通過lua的string.match解析GET中的信息。Lua - 通過string.match匹配HTTP GET

GET中的我的信息是:「SSID = My + ssid & PASS = mypass123 & IP = 192.168.1.100」。

我用這個代碼:

local _GET = {} 
vars="SSID=My+ssid&PASS=mypass123&IP=192.168.1.100" 
print(vars) 
      for k, v in string.gmatch(vars, "(%w+)=(%w+)&*") do 
       _GET[k] = v 
     print(k) 
     print(v) 
      end 

我的結果是:

SSID 
My 
PASS 
mypass123 
IP 
192 

我怎樣才能得到完整的信息?例如,不僅僅是IP地址的第一部分數字?

回答

2

試試這個:

vars="SSID=My+ssid&PASS=mypass123&IP=192.168.1.100" 
vars=vars.."&" 
for k, v in string.gmatch(vars, "(%w+)=(.-)&") do 
     print(k) 
     print(v) 
end 
+0

謝謝!其作品! – offowy