1

私は Lua を使用しており、各行を 2 つの異なる配列に分割したいファイルがあります。私のファイルの各行には、スペースで区切られた 2 つの文字列が含まれています。たとえば、私のファイルに含まれている場合

 something something_else

私が持っている必要があります

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

スプリットライクを使ってみた

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 = line:match'(.-)%s+(.*)'
  table.insert(tab_1,v1)
  table.insert(tab_2,v2)
end
于 2013-07-22T10:17:57.387 に答える
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 に答える