Lua string.match模式为MSN weatherservice

时间:2013-11-25 16:29:53

标签: string lua lua-patterns

我使用MSN weatherservice。现在我对string.match有以下问题。除sWindRichtung外,所有变量均已填充。它等于nil

sHumidity, rest = string.match(rest,"humidity=\"([^\"]+)\"(.*)");
sWind, rest = string.match(rest,"windspeed=\"([^\"]+)\"(.*)");
sWindRichtung, rest = string.match(rest,"winddisplay=\"([^\"]+)\"(.*)");

要过滤的字符串是:humidity="77" winddisplay="11 km/uur N" windspeed="11"

我认为角色/就是问题所在。

1 个答案:

答案 0 :(得分:5)

您可以一次解析字符串。试试这个:

s = [[
humidity="77" winddisplay="11 km/uur N" windspeed="11"
]]

for k,v in s:gmatch('(%a+)="(.-)"') do
        print(k,v)
end

当然,您可能希望将值保存在表格中。