这是一款基于 PEG 的小型解析器库。请参阅 Wiki 中的"黑客攻击"页面。
简介 Parslet 使开发复杂的解析器变得简单。它通过以下方式实现: * 提供最佳的错误报告 * 不为您生成大量的代码以进行调试 Parslet 采用了一条漫长的路径,以使您的工作更加轻松。它支持逐步构建语言。通常,您会从小处开始,首先实现语言的原子;Parslet 以能够实现这一点而感到自豪。 想要尝试一下吗?请参阅相关网站:https://kschiess.github.io/parslet/
match['abc'].parse('a') # => "a"@0 match['abc'].parse('b') # => "b"@0 match['abc'].parse('c') # => "c"@0
str('foo').as(:important_bit).parse('foo') # => {:important_bit=>"foo"@0}
quote = str('"') simple_string = quote >> (quote.absent? >> any).repeat >> quote simple_string.parse('"Simple Simple Simple"') # => ""Simple Simple Simple""@0
class Smalltalk = 1.9. 我已经在 MRI 1.9、rbx-head 和 jruby 上测试过。如果你遇到问题,请报告为 bug。
暂无开放 Issues,或尚未同步最近议题。