如何阅读"发短信的表"进入一张桌子

时间:2014-05-19 07:48:42

标签: string lua lua-table

我的问题:我有一个使用表作为变量的函数,但函数的变量是从解析的文本文件加载的,因此,该表被读作字符串。为了更清楚,我有这个:

"{x = 1, y = 2, z = 3}"

我需要将其转换为:

{x = 1, y = 2, z = 3}

我尝试了字符串sub,没有成功。我可能会尝试修改文本文件以包含3个字段(每个字段都有一个表变量)来获取我的结果,但这意味着对文本文件结构和构建该文件的函数进行了重大修改...如果我可以使用那个"发短信的表"作为一张桌子,我已经完成了。

1 个答案:

答案 0 :(得分:2)

您可以将字符串加载到函数中,然后像这样运行它:

local str = "{x = 1, y = 2, z = 3}"
local f = assert(load("return " .. str))
local t = f()

在Lua 5.1中,使用loadstring代替load