- 论坛徽章:
- 1
|
用这个吧, 能保留你每一小段的换行风格不变.
use strict;
use warnings;
open FILE1, "<", "file1.txt";
open FILE2, "<", "file2.txt";
open FILE3, ">", "file3.txt";
my @file2 = map {chomp; [split /\s+/] } <FILE2>;
our $name;
our $content;
while(<FILE1>){
if(/^>(\w+)/){
if(defined($name)){
for my $a (@file2){
if($a->[0] eq $name){
my @totalLineFeed = substr($content,0,$a->[1]) =~ /\n/g;
substr($content,$a->[1]-1 + @totalLineFeed,1)=$a->[2];
}
}
print FILE3 ">".$name."\n".$content;
}
$name = $1;
$content = "";
} else {
$content .= $_;
}
}
|
|