Perl 删除结尾的字符串 10
例如.V文件中有个触发器例化代码,DFFU0(.a(a).b(b)DQDQN)只删除DFF中的DQN,其他的不删除,还有DFF这个例化块括号里的内容可能不在一行,例如DF...
例如.V文件中有个触发器例化代码,
DFF U0(.a(a) .b(b) DQ DQN )
只删除DFF中的DQN,其他的不删除,还有DFF这个例化块括号里的内容可能不在一行,
例如
DFF U0(.a(a)
.b(b)
DQ
DQN)
该怎么用Perl 删除最后的DQN 展开
DFF U0(.a(a) .b(b) DQ DQN )
只删除DFF中的DQN,其他的不删除,还有DFF这个例化块括号里的内容可能不在一行,
例如
DFF U0(.a(a)
.b(b)
DQ
DQN)
该怎么用Perl 删除最后的DQN 展开
展开全部
你是只要删除 "DQN" , 还是删除 ) 前的最後一个没空格的字串 ? (如果是前者, 你用文字编辑器直接搜寻取代不就好了吗? )
你那个括号到底是 '('还是 '(' [全半型之别]
更多追问追答
追问
是DQN,但是它和DFF可能不在最后一行,你懂Verilog就知道器件例化可以换行,反正就是删除DQN,其他不动,而且有上万个这样的文件需要同样处理,还需要通过打开文件列表.f文件来读入每个.v文件处理
追答
抱歉, 我只会 perl , 所以如果要追问的话, 您最好能针对文字的操作做更多的描述. 我先写一个这样的 script 给您, 看看能用得上不 :
$| = 1;
use strict;
use File::Slurp; # 可能要自己下一个
use File::Basename;
my $outputDir = "./"; # 输出时的位置, 千万别跟来源在同一个 dir 下
my @fileList = ( ... ) ; # 自己弄个档案清单吧!
foreach my $file ( @fileList ) {
print "Processing $file...";
my $content = read_file ( $file ) ;
$content =~ s/DQN//mg;
my ($fileName) = fileparse($file);
write_file ( "$outputDir/$fileName" => $content );
print "Done!$/"
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询