7
以下模式(從this page)只用字符串平衡括號匹配:需要幫助瞭解LPEG和PEG的
b = lpeg.P{ "(" * ((1 - lpeg.S"()") + lpeg.V(1))^0 * ")" }
是什麼1-
在1 - lpeg.S"()"
是什麼意思?
function gsub (s, patt, repl)
patt = lpeg.P(patt)
patt = lpeg.Cs((patt/repl + 1)^0)
return lpeg.match(patt, s)
end
是什麼在patt/repl + 1
的+1
是什麼意思?
我仍然沒有完全從這個paper
任何幫助將不勝感激得到優先選擇運營商/
的功能非常好!
通常,每當LPEG可以接受的圖案作爲參數,它可能還接受一個普通的數字(或字符串或布爾等)和將利用lpeg.P它隱式轉換的圖案()。而lpeg.P(1)的意思是「任何角色」。 – mpeterv