1

我正在使用 Lua,我有一个文件,我想将每一行分成两个不同的数组。我的文件的每一行都包含两个用空格分隔的字符串。例如,如果我的文件包含

 something something_else

我应该

tab_1[1] = something
tab_2[1] = something_else

我尝试使用 split like

file =io.open("myfile.txt", "r")
for line in file:lines() do
line = file:read()
for value in split(line," ")
table.insert(tab_1,value[i])
table.insert(tab_2,value[i])
i=i+1
end

这似乎是错误的,因为我知道 split 可能不会返回数组,但我知道它返回不同的字符串。我该如何管理它们。

4

2 回答 2

1
for line in io.lines('myfile.txt') do
  local v1, v2 = string.match(line, "^(%S+)%s+(%S+)$")
  if v1 and v2 then
    table.insert(tab_1,v1)
    table.insert(tab_2,v2)
  else
    -- wrong line
  end
end
于 2013-07-22T10:25:49.660 回答
1
for line in io.lines'myfile.txt' do
  local v1, v2 = line:match'(.-)%s+(.*)'
  table.insert(tab_1,v1)
  table.insert(tab_2,v2)
end
于 2013-07-22T10:17:57.387 回答