string.sub(str, i, j) 指定の文字列を取り出す – FlyWithLua

2023年8月4日

文字列strのi文字目からj文字目までの部分文字列を返します。i、jには負の数を指定することもでき、その場合は末尾から何文字目、という形になります。jを省略した場合には-1、つまりstrの末尾までとなります。

ABCDEの文字列のなかで2〜4文字だけを取り出す

x = string.sub(“ABCDE”, 2, 4) — x = “BCD”

1文字だけとりだすには、その位置を2つ並べる。

x = string.sub(“ABCDE”, 3, 3) — x = “C”

3文字以降を取り出す

x = string.sub(“ABCDE”, 3) — x = “CDE”

前の2文字目から、後ろから2文字目までを取り出す

x = string.sub(“ABCDE”, 2, -2) — x = “BCD”

これが全てのデータを取得することになる。

x = string.sub(“ABCDE”, 1, -1) — x = “ABCDE”

後ろから2文字までを取り出す

x = string.sub(“ABCDE”, -2) — x = “DE”