Lua Memo

string.match

string.match (s, pattern [, init])

文字列 s から pattern で最初にマッチする部分を探して返す。見つかった場合、マッチした部分を返し、見つからなければ nil を返す。

もし、pattern に「(...)」を使ったキャプチャがあれば、全体にマッチした部分は返さずに、キャプチャした部分を返す。キャプチャが2つ以上あっても、値を多値として返す。

3つめの省略可能な数値の引数 init は検索を開始する位置を指定する。デフォルト値は1で、負の値を指定してもよい。

sample

print(string.match("abc:def","^[a-z]+")) --> abc
print(string.match("abc:def","%w+:(%w+)")) --> def
print(string.match("123-4567","(%d+)-(%d+)")) --> 123  456

link