我以前使用过AntlrWorks 1.4为C#目标生成解析器和词法分析器。现在我正在开始一个新的项目,并且我尝试使用antlrworks1.5。但是生成的词法分析器在C#代码中有很多转义序列错误。我尝试了1.4版本,它工作得很好。
基本上,错误是,在1.5生成的代码中,它具有无效的转义,如"\1\2\3“,而在1.4生成的代码中,它们是"\x01\x02\x03”。
有没有办法在1.5版本中解决这个问题?或者我不得不坚持使用1.4版本。
发布于 2013-03-29 10:58:11
ANTLR3的C#端口没有经过测试,不能与ANTLRWorks一起工作,或者在使用该工具的Java版本进行代码生成时。它仅针对使用MSBuild集成和/或Antlr3.exe生成代码进行了测试。任何暗示ANTLRWorks和/或ANTLR工具的Java版本可用于为CSharp3或CSharp2目标生成代码的行为都只是巧合。
您可以在以下站点下载C#端口以及配置C#项目的文档,以自动构建您的语法:
http://www.antlr.org/wiki/display/ANTLR3/Antlr3CSharpReleases
https://stackoverflow.com/questions/15694302
复制相似问题