我使用Perl脚本来删除不必要的标签,这些标签是我正在创建的xml pdf文件
#!/usr/bin/perl
#use strict;
use DirHandle;
my $sourcefile = shift;
my $outputfile = "new" . $sourcefile;
open SOURCEFILE, "$sourcefile" or die;
open OUTPUTFILE, ">$outputfile" or die;
$flag = 0;
foreach $line (<SOURCEFILE>) {
if($line=~ /<\?templateDesigner StyleID aped2\?>\n/) {
if($flag == 1) {
line=~ s/[\t]*<\?templateDesigner StyleID aped2\?>\n//gi;
}
$flag=1;
}
elsif($line=~ /<\?templateDesigner StyleID aped3\?>\n/) {
if($flag == 1) {
$line=~ s/[\t]*<\?templateDesigner StyleID aped3\?>\n//gi;
}
$flag=1;
}
elsif($line=~ /<\?templateDesigner StyleID apcb1\?>\n/) {
if($flag == 1) {
$line=~ s/[\t]*<\?templateDesigner StyleID apcb1\?>\n//gi;
}
$flag=1;
}
else {
$flag=0;
}
print OUTPUTFILE $line;
}
close SOURCEFILE;
close OUTPUTFILE;
Run Code Online (Sandbox Code Playgroud)
我运行此脚本的结果是跟随错误.
无法修改替换中的常量项目(s ///)d:\ Temp\PDFPatch2.pl第1行7,靠近"s/[\ t]*<\?templateDesigner StyleID aped2 \?> \n // gi ;" 由于编译错误,d:\ Temp\PDFPatch2.pl的执行中止.
抱歉,对perl不太了解.