StandardTokenParsers和JavaTokenParsers之间究竟有什么区别? 什么是好事,什么是另一个好处?
在StandardTokenParsers中,我可以使用lexical.reserved定义我的关键字,但这对我有何帮助?
BR Troels
答案 0 :(得分:4)
body of JavaTokenParsers实际上非常简单,让您对正在发生的事情有一个很好的感觉。具体来说,JavaTokenParsers继承自RegexParsers,它为您提供了定义匹配的灵活性; JavaTokenParsers定义了一些用于匹配标识符,数字等的示例正则表达式。我没有使用StandardTokenParsers,因为RegexParsers给了我更多的理智......你需要或多或少地定义与它们的硬字符匹配,而不是使用正则表达式。
答案 1 :(得分:2)
还有另一个重要的区别。 StandardTokenParsers解析Token实例,而JavaTokenParsers解析Char。解析失败时,您会在错误消息中看到它。 StandardTokenParsers报告完整的违规令牌,JavaTokenParsers只报告第一个字符。