2017-05-04 4 views
1

テーブルを内部で削除するネストしたテーブル構造があります。ルアのネストしたテーブル構造のテーブルを削除するには

例:

for k, v in pairs (data) do     
    local element = v 
     for i=1, #element do 
       if (element[i].ttype == "ENUM") then 
       -- Do Something 
       -->Delete it!  
     end 
end 

私はゼロに設定することができますが、これはそれを '削除' しませんでした。私はそれを削除し、残りの要素を新しいインデックスに適応させたいと思います。ルアには何かありますか?

答えて

3

リストにはtable.remove()関数を使用します。 リストの長さが動的に変化するため、ループの内側からこれを行うように注意してください。おそらくnilを手動で確認するか、代わりにwhileループを使用する必要があります。

はこちらをご覧ください:https://www.lua.org/manual/5.3/manual.html#pdf-table.remove

+0

だから、table.remove(要素[i]は、i)をでしょうか? – Theodor

+1

'table.remove(element、i)' – tonypdmtr

関連する問題