string.sub()
CoddyのLuaジャーニー「基礎」セクションの一部。レッスン 46/90。
string.sub()関数を使うと、部分文字列と呼ばれる、文字列の特定の部分を取り出せます。名前の先頭数文字を取得したり、テキストの特定の箇所を取り出したりするなど、大きな文字列の一部だけが必要なときに便利です。
基本的な構文は次のとおりです。
string.sub(your_string, start_position, end_position)関数は3つの引数を取ります。抽出元の文字列、開始位置、終了位置です。Luaでは、文字列の位置は0ではなく1から始まることを覚えておきましょう。
簡単な例を見てみましょう。
local word = "programming"
local first_three = string.sub(word, 1, 3)
print(first_three) -- 出力: proこの例では、string.sub()は位置1から位置3までの文字を抽出し、「pro」を返します。元の文字列は変更されず、関数は抽出した部分だけを含む新しい文字列を返します。
チャレンジ
簡単プレイヤーのキャラクター名全体から最初の部分を取り出す、ゲームキャラクター名抽出ツールを作成しましょう。characterNameという名前の変数を宣言し、値として"Shadowblade the Mighty"を代入します。string.sub()関数を使ってキャラクター名の最初の11文字を取り出し、その結果をshortNameという名前の変数に格納します。取り出した短い名前を出力します。
自分で試してみよう
-- キャラクター名の変数を宣言する
local characterName = "Shadowblade the Mighty"
-- TODO: string.sub()を使って最初の11文字を取り出すコードをここに書く
-- 結果を出力する
print(shortName)このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
基礎のすべてのレッスン
自分で練習してみよう: Luaオンラインコンパイラ