I am looking for a peg.js grammar expression for matching against:
"variable"
# Fails"variable."
# Fails""
# Fails"variable.variable"
# Ok"variable.variable.variable.variable.variable"
#Ok
input I expect
{PATH: "variable.variable"}
{PATH: "variable.variable.variable.variable.variable"}
Sample.pegjs
start =
PATH_EXP
STRING_EXP =
chars:[0-9a-zA-Z_]+ { return chars.join(""); }
PATH_EXP =
path:(STRING_EXP "." STRING_EXP) { return {PATH: path.join("")}; }
I don't know how to make the expression repeat, but also make it optional.