我有2个字符串:
fields="a,b,c,d,e"
values="1,2,,4,5"
我需要一个表,以获取像这样的对值:
print(result.a) -> "1"
print(result.c) -> "" (or nil)
有可能吗?
这里提供了在没有for循环的情况下利用生成器的机会。下面的代码串联运行两个gmatch生成器。
fields="a,b,c,d,e"
values="1,2,,4,5"
fields=fields.."," ; F=fields:gmatch("(.-),")
values=values.."," ; V=values:gmatch("(.-),")
result={}
while true do
local k,v=F(),V()
if k==nil or v==nil then break end
result[k]=v
end
for k,v in pairs(result) do print(k,v) end