将两个字符串连接到Lua中的一个表中

问题描述 投票:1回答:1

我有2个字符串:

fields="a,b,c,d,e"

values="1,2,,4,5"

我需要一个表,以获取像这样的对值:

print(result.a) -> "1"

print(result.c) -> "" (or nil)

有可能吗?

lua lua-table
1个回答
0
投票

这里提供了在没有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
© www.soinside.com 2019 - 2024. All rights reserved.