【发布时间】:2011-11-24 12:37:20
【问题描述】:
我想用我的语法忽略 空格 和 新行,因此PEG.js 输出中缺少它们。此外,括号内的文字应在新数组中返回。
语法
start
= 'a'? sep+ ('cat'/'dog') sep* '(' sep* stmt_list sep* ')'
stmt_list
= exp: [a-zA-Z]+ { return new Array(exp.join('')) }
sep
= [' '\t\r\n]
测试用例
a dog( Harry )
输出
[
"a",
[
" "
],
"dog",
[],
"(",
[
" "
],
[
"Harry"
],
[
" "
],
")"
]
我想要的输出
[
"a",
"dog",
[
"Harry"
]
]
【问题讨论】:
标签: javascript parsing lexical-analysis peg