【问题标题】:What is the ellipsis (empty string) used for in a Treetop(PEG) grammar?Treetop(PEG)语法中使用的省略号(空字符串)是什么?
【发布时间】:2012-01-11 23:28:35
【问题描述】:

Treetop website给出了以下我看不懂的解释

省略号 一个空字符串匹配任何位置并且不消耗任何输入。当您希望将单个符号视为序列的一部分时,它很有用,例如,当使用共享代码处理备用规则时。

规则替代 (富吧/巴兹'') { 默认值 元素.map{|e| e.text_value } 结尾 } 结束

什么时候将符号视为序列的一部分?谁能提供一个有意义的例子?

【问题讨论】:

    标签: treetop peg


    【解决方案1】:

    我不熟悉树顶。从这个例子看来,( foo bar / baz '' ) 会产生['foo', 'bar']['baz', '']

    如果删除省略号,您将获得['foo', 'bar'] 或仅获得'baz'(无序列/列表/数组)。

    【讨论】:

    • 好的,所以它似乎只是一种确保它产生数组的方法,即使只有一件事。如果您希望拥有始终期望输入为数组的通用代码。现在我明白了。
    猜你喜欢
    • 2015-08-08
    • 1970-01-01
    • 2018-09-29
    • 1970-01-01
    • 2014-01-19
    • 2021-10-24
    • 1970-01-01
    • 2011-01-22
    • 2011-04-05
    相关资源
    最近更新 更多