我有一个带有一些代码和注释行的example.c文件, 在该文件中,我有一个评论专栏:
static Bool Start = FALSE;/* $n=Start$ $t=static Bool$ $i=FALSE$
$d=initialize start to false$ */
我使用perl删除注释行,我尝试使用正则表达式删除注释行。
我已尝试过以下代码,但它无效,
`open(F,"<","example.c") or die "Could not open the .c file ";
{
$MultilineComment0 = 0;
while(my $matchLine = <F>)
{
if (($matchLine =~ s/^.*\/\*.*/) && ($matchLine !~ m/\*\/$/)) # matches Code + Multi Comment line Ex: Variable Declaration statements
{
$MultilineComment0 = 1;
next; #removes comment part from excutable lines
}
if ($MultilineComment0 == 1)
{
if ($matchLine =~ m/\*\/$/)
{
$MultilineComment0 = 0;
}
next;
}
push(@executable_code_only, $matchLine);
}
}
close(F);
open(F, ">",example.c");
print F ("@executable_code_only");
close(F);`
如果有人为我提供正则表达式来删除这些注释行,我会很有帮助。