2011-12-26 64 views
0

如何匹配野牛语法中的字符串?让我们说一个代表“polySphere”的字符串。我会不会像POLYSPHERE一样在.lex文件中创建一个标记,然后在野牛中使用它?我不能直接使用字符串吗?如何匹配野牛语法中的字符串?

感谢

回答

1

您可以通过字符识别野牛字符中的字符串,例如:

polysphere: 'p' 'o' 'l' 'y' 'S' 'p' 'h' 'e' 'r' 'e' 

但这是相当ineffecient - 一般的要好得多识别字符串中的词法分析器和返回单个令牌

1

你不能确定你的grammar.you字符串都会有这样的错误:

multicharacter literal tokens not supported

你应该简单地添加在您的lex

"polySphere" { return POLYSPHERE; }