Lua - 通过string.match

时间:2015-12-17 17:25:22

标签: string parsing lua match

我想通过lua的string.match解析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地址中数字的第一部分?

1 个答案:

答案 0 :(得分: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