我们如何在c中编写一个程序,它使用正则表达式来识别字符流是否符合语法。

时间:2010-11-07 12:31:50

标签: compiler-construction

我将设计一个新的编译器。我想知道如何使用RE来识别字符。语法是什么?我如何实现它?

3 个答案:

答案 0 :(得分:1)

答案是你不应该尝试使用正则表达式编写编译器;他们是这项工作的错误工具。首先,它们仅用于识别regular languages中的字符串;任何非平凡的编程语言都不是常规的。

您可能最好使用bisonYacc来生成解析器代码。

答案 1 :(得分:0)

您可以使用此网站测试您的正则表达式: http://rubular.com/

或者您可以使用此Visual Studio扩展来执行相同的工作:http://visualstudiogallery.msdn.microsoft.com/en-us/55c24bf1-2636-4f94-831d-28db8505ce00

答案 2 :(得分:0)

如果您要编写编译器,则需要的不仅仅是正则表达式,而应该查看ANTLR等工具。