Arrays 如何从lua数组中提取值?
我正在调试其他人的应用程序,遇到了一个数据结构,当转储到文件时,该数据结构如下所示:Arrays 如何从lua数组中提取值?,arrays,lua,lua-table,Arrays,Lua,Lua Table,我正在调试其他人的应用程序,遇到了一个数据结构,当转储到文件时,该数据结构如下所示: ["value"] = {} ["value"]["0.ouname"] = {} ["value"]["0.ouname"]["label"] = "Test value" ["value"]["0.ouname"]["seq"] = 90 ["value"]["0.ouname"]["type"] = "text" ["value"]["0.ouname"]["value"] = "" ["v
["value"] = {}
["value"]["0.ouname"] = {}
["value"]["0.ouname"]["label"] = "Test value"
["value"]["0.ouname"]["seq"] = 90
["value"]["0.ouname"]["type"] = "text"
["value"]["0.ouname"]["value"] = ""
["value"]["1.ouname"] = {}
["value"]["localityName"]["value"] = "California"
我需要能够从中提取序号“90”,但我不知道如何提取。
我可以通过执行以下操作获得“California”值:
print(myvar.value.localityName.value)
print(myvar.value.0.ouname.seq)
print(myvar.value.["0.ouname"].seq)
print(myvar.value."0.ouname".seq)
然而,我似乎无法获得序列号
到目前为止,我已经尝试了以下方法:
print(myvar.value.localityName.value)
print(myvar.value.0.ouname.seq)
print(myvar.value.["0.ouname"].seq)
print(myvar.value."0.ouname".seq)
但是我没有成功
如果您有任何建议,我将不胜感激。在Lua中,
a.b
是a[“b”]
的语法糖。当然,您只能在可能的情况下使用它,并且结果表达式不会有其他含义(如您的示例中所示)
print(myvar.value['0.ouname'].seq)
因此,您必须使用
print(myvar.value["0.ouname"].seq)
您也可以删除所有点并仅使用[]
,例如:
print(myvar["value"]["0.ouname"]["seq"])
与写入文件的格式完全相同