【问题标题】:Unrecognized Rule in lex filelex 文件中无法识别的规则
【发布时间】:2016-10-19 03:14:04
【问题描述】:

我想知道为什么我在这两行上总是出现无法识别的运行

(\${数字})

({数字})

我不确定为什么会发生这种情况,我相信我的别名是正确的,但如果有人可以仔细检查,我将不胜感激。

【问题讨论】:

    标签: c lex


    【解决方案1】:

    Flex 不是 C,它使用自己的语言。一种语言,其中空格很重要,所有 cmets 都需要自己的行。所以:去掉定义后的 line-cmets。

    /* Does not work */
    letter [A-Za-z]
    digit [0-9]
    number ({digit})+(\.)?({digit})* // TODO: complete
    word {letter}+ // TODO: complete
    
    
    /* Does work */
    letter [A-Za-z]
    digit [0-9]
    number ({digit})+(\.)?({digit})*
    word {letter}+
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-06-08
      相关资源
      最近更新 更多