Skip to content

Instantly share code, notes, and snippets.

@joeriks
Created January 15, 2014 08:06
Show Gist options
  • Save joeriks/8432496 to your computer and use it in GitHub Desktop.
Save joeriks/8432496 to your computer and use it in GitHub Desktop.
peg grammar for simple name parsing
start = (fullname:fullname "\n"? {return fullname})*
name =
char:[A-Za-z]+ { return char.join(""); }
fullname =
firstName:name " " secondName:name {return {fn:firstName, sn:secondName}}
/* foo bar
baz bang */
=>
/*
[{fn:"foo", sn:"bar"},{fn:"baz",sn:"bang"}]
*/
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment