使用Perl删除注释

Tim*_*ard 3 regex perl

是否有任何正则表达式能够从perl中删除给定C程序中//和/**/var的所有注释?

给定多行程序,它应该使用正则表达式来删除注释并返回未注释掉的部分.

谢谢.

Tud*_*tin 7

试试Regexp::Common::comment:

  use Regexp::Common qw /comment/;
  while (<>) {
        s/($RE{comment}{C++})//;
  }
Run Code Online (Sandbox Code Playgroud)

  • 我不知道,还没有尝试过,但是,鉴于作者是Damian Conway,我认为它可以处理它们.唯一的要求可能是将c ++源文件作为一个整体来处理,而不是逐行处理 (2认同)