好的,我知道这是一个反复出现的问题,但我似乎无法找到一个完全基于正则表达式的单一工作解决方案。因此,这就是我所想到的(实际上它基于C# sharp grammar specification by ECMA中多行注释的'字面'描述)。使用正则表达式匹配多行C++样式注释
\/\*(([^\*])+)|([\*]+(?!\/))[\*]+\/
然而,正如你可以看到它不工作...
演示:
任何想法?这甚至可能没有做各种黑客? (嗯,我的意思是比正则表达式本身以外...笑)
附:如果它是任何信息价值,我目前正在开发一个Lex/Bison/C/D的词法分析器/解析器和解释器,显然多行注释是一件需要考虑的事情...
对于哪种语言? C++?如果是的话,请跳过我评论的其余部分,如果不是的话 - 请不要重复C++的错误,它的多行注释不能嵌套。 – greenoldman
@greenoldmand感谢您的建议。不,不适用于C++。这是我自己的。 (也看看你的项目,顺便说一下!;-)) –