私は次のような文字列を解析しようとしています: &1 first &2 second &4 fourth \\
、そしてそれからテーブルを構築する
t = {1=first, 2=second, 4=fourth}
私は一般的に正規表現の経験があまりないので、私の素朴な試み(\\
今のところとテーブルの部分を無視して)は
local s = [[&1 first &2 second &4 fourth \\]]
for k,v in string.gmatch(s, "&(%d+)(.-)&") do
print("k = "..k..", v = "..v)
end
これは、キャプチャされた 2 つのペアが表示されることを期待していたときに、最初にキャプチャされたペアのみを提供します。私はいくつかの読書をしてlpeg
ライブラリを見つけましたが、私にはあまりなじみがありません. ここはlpeg
必要ですか?誰かが私のエラーを説明できますか?