table.concat()
CoddyのLuaジャーニー「ロジックと制御フロー」セクションの一部。レッスン 5/54。
リスト形式のテーブル内のすべての要素を、1つの文字列に結合する必要がある場合があります。Lua には、この目的のために特別に用意された table.concat() 関数があり、任意の区切り文字を使ってテーブルの要素を簡単に結合できます。
基本的な構文は次のようになります:
local result = table.concat(myTable, separator)単語のリストを使った簡単な例を見てみましょう:
local words = {"Hello", "from", "Lua"}
local sentence = table.concat(words, " ")
print(sentence) -- 出力: Hello from Lua追加の引数として開始位置と終了位置を指定することで、結合するテーブルの範囲を制御することもできます。特定の要素だけを結合したい場合に便利です:
local numbers = {"1", "2", "3", "4", "5"}
local partial = table.concat(numbers, "-", 2, 4)
print(partial) -- 出力: 2-3-4table.concat()関数はリスト形式のテーブル専用で、結合する前に各要素を文字列に変換します。
チャレンジ
簡単foldersテーブルとseparator文字列を受け取り、すべてのフォルダーをseparatorで結合した1つのパス文字列を返すbuildPath関数を記述してください。
table.concat()を使用して、すべてのフォルダー名を1つのパス文字列に結合してください。
パラメーター:
folders(table): フォルダー名を文字列として含むリスト形式のテーブルseparator(string): フォルダー名の間に使用する文字または文字列(例:"/"または"\\")
戻り値: separatorで結合されたすべてのフォルダーを含む1つの文字列(string)
自分で試してみよう
function buildPath(folders, separator)
-- ここにコードを書いてください
end
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
ロジックと制御フローのすべてのレッスン
自分で練習してみよう: Luaオンラインコンパイラ