我正在学习如何使用 PEGKit,但是在为解析行的脚本创建语法时遇到了问题,即使它们被多个换行符分隔也是如此。我已将问题简化为以下语法:
expr
@before {
PKTokenizer *t = self.tokenizer;
self.silentlyConsumesWhitespace = NO;
t.whitespaceState.reportsWhitespaceTokens = YES;
self.assembly.preservesWhitespaceTokens = YES;
}
= Word nl*;
nl = nl_char nl_char*;
nl_char = '\n'! | '\r'!;
对我来说,这个简单的语法应该允许每行一个单词,必要时有尽可能多的换行符。但它只允许一个带有可选换行符的单词。有人知道这里有什么问题吗?谢谢你。