Flex 无法识别的规则错误

Flex unrecognised rule error

我试图在 flex 中使用以下模式来匹配 # linenum filename flags 形式的预处理器信息,但我遇到了无法识别的规则错误。这是触发它的模式:

# [0-9]+ \"[^"]*\" [1-4]{0,4}

根据评论解决:

需要引用空格的规则之间不能有空格

  PP_INFO #[ ][0-9]+[ ]\"[^"]*\"[ ][1-4]{0,4}