当前位置 : 主页 > 网络编程 > lua >

Lua string.match模式为MSN weatherservice

来源:互联网 收集:自由互联 发布时间:2021-06-23
我使用的是 MSN weatherservice.现在我遇到了string.match的以下问题.除sWindRichtung外,所有变量都被填充.它等于零. sHumidity, rest = string.match(rest,"humidity=\"([^\"]+)\"(.*)");sWind, rest = string.match(rest,"wi
我使用的是 MSN weatherservice.现在我遇到了string.match的以下问题.除sWindRichtung外,所有变量都被填充.它等于零.

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”

我认为角色/是问题.

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

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

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

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

网友评论