`
我要阳光
  • 浏览: 59575 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

antlr匹配全文的问题

阅读更多
  最近因为要写一个解释器,所以研究了一下大名鼎鼎的antlr,中文的资料比较少,大多要自己看官网的文档和一些别人写的代码。
  其中遇到了一个问题,就是用anltr语法来识别时候,只是默认匹配最大的token流如:
prog: INT ;
这是一个识别INT的语法,但是如果我们输入1aaa2ccc3的话,antlr只会匹配到 1,而后面的如果是合法token它将不会报错,直接忽略的后面的内容。
  解决办法是
prog: INT EOF ;
EOF是结束符,无论你的字符串是什么,它都会在最后帮你加上这个字符,这样antlr识别到这个字符就知道你的字符串结束了,所以如果在语法后面加上这个,就代表,要匹配全文。
1
2
分享到:
评论
2 楼 我要阳光 2011-10-24  
comsci 写道
hi,哥们,我这里有一份以前做过的ANTLR的语法和词法文件包,欢迎下载并指教
http://download.csdn.net/detail/comsci/3549915

互相学习啊 呵呵
1 楼 comsci 2011-10-18  
hi,哥们,我这里有一份以前做过的ANTLR的语法和词法文件包,欢迎下载并指教
http://download.csdn.net/detail/comsci/3549915

相关推荐

Global site tag (gtag.js) - Google Analytics