3

我需要有关需要解析属性文件并使用字符串键生成数组的小型 Lua 脚本的帮助。这是我试图做的;

file = assert(io.open("/root/test.prop", "r"))
property = {}
for line in file:lines() do
  for key, value in string.gmatch(line, "(.-)=(%w+)") do 
    property[key] = value 
  end
end

由于某些未知原因,只有第一对键值被添加到表中。由于我是 Lua 的新手,有人可以给出提示。

4

1 回答 1

0

很可能您的 gmatch 在第二行失败,因此键值为 nil,因此 for 循环将退出。

正如其他人提到的,使用更广泛的匹配表达式,例如“(.-)=(.-)$”。

于 2013-10-03T11:51:13.503 回答