- 论坛徽章:
- 0
|
本帖最后由 paktc 于 2010-09-09 11:52 编辑
我想了很久,还是没有想到简单的方法,还是把粗糙的放上来了
- #!/usr/bin/perl
- open READ,"<src.txt" or warn "File not exist.";
- open WRITE,">dest.txt";
- my (@arr,@str);
- my ($max,$si)=(0,0);
- foreach (<READ>) {
- if (/--------/) {
- foreach (1..$#arr) {$str[$si].="$arr[$_]\t";} #这个数组记录实际是从1开始的
- $si+=1;
- undef @arr;
- }
- if (/fd0*(.*)=(.*)/) {
- $arr[$1]=$2;
- if ($1>$max) {$max=$1;}
- }
- }
- foreach (1..$max) {$item=sprintf "${item}fd%04d\t",$_;}
- print WRITE "$item\n";
- foreach (@str) {print WRITE "$_\n";}
- close READ,WRITE;
- print "END";
- <STDIN>;
复制代码 楼主不会是已经销声匿迹了吧=.= 这两天不见踪影 |
|