我有一个大型脚本,最终用户需要编辑它,因此需要一些冗余的评论。我使用类似于此
的文件布局//********************
//
// FileName
// This script contains:
// - Function X - does something
// - Function Y - does something else
//
//********************
//********************
// Function X
// does something (<< I'd only like to enter this part once)
//********************
// Code here...
//********************
// Function Y
// does something else
//********************
// Code here...
我想创建一个简单的解析器,将函数摘要复制/粘贴到文件的标题中。我知道有几种工具可以帮助实现这一目标,比如ANTLR甚至RegEx,但最好的方法是什么?
答案 0 :(得分:1)
考虑到你提到的两个选项,ANTLR和Regex,我建议使用ANTLR。 从长远来看,ANTLR会更灵活,我相信你应该能够更有效地使用它(它以语法为基础进行分析)。 除非您添加一些自定义逻辑和诸如此类的东西,否则正则表达式方法将限于常规语言。
作为一个例子,我怀疑你将很难识别块内部的注释与使用正则表达式的外部块。 CFG应该能够做出这样的区分。然后,如果您可以控制源代码,您可以起草一些规范,以便在哪些类型的注释中出现......