- 论坛徽章:
- 307
|
- #!/usr/bin/perl
- use strict;
- use warnings;
- my @aData = ();
- open (my $FHr, '<', shift);
- {
- local $/ = '';
- push (@aData, [split]) while (<$FHr>);
- }
- close ($FHr);
- my ($idx, $lastIdx, $pos, $print) = (0) x 4;
- while (<>){
- chomp;
- if (/\A(\w+)</){
- $idx = $1 eq 'Sub' ? 1 : 0;
- $pos = 0;
- if ($print++){
- print ");\n" if (!($lastIdx or $idx) or ($lastIdx and $idx));
- }
- printf("%s\t%s\n(\n", $_, $aData[$idx][$pos]);
- next;
- }
- $pos++;
- $lastIdx = $idx;
- printf(".%s\t(%s)", $aData[$idx][$pos], $_);
- print ',' if ($pos < $#{$aData[$idx]});
- print "\n";
- }
- print ");\n";
复制代码 perl abc.pl b a
--------------------------
INORM<0> feature
(
.AXX (AXX),
.BXX (BXX),
.CXXX (CXXX),
.daaa (daaa),
.ebbb (ebbb)
);
INORM<1> feature
(
.AXX (AXX),
.BXX (BXX1),
.CXXX (CXXX1),
.daaa (daaa),
.ebbb (ebbb)
);
INORM<2> feature
(
.AXX (AXX),
.BXX (BXX2),
.CXXX (CXXX2),
.daaa (daaa),
.ebbb (ebbb)
Sub<0> feature2
(
.AXX (AXX),
.BXX (BXX),
.CXXX (CXXX),
.daaa (daaa),
.ebbb (ebbb)
);
Sub<1> feature2
(
.AXX (AXX),
.BXX (BXX1),
.CXXX (CXXX1),
.daaa (daaa),
.ebbb (ebbb)
);
|
|