Perl程序两行合并为一行

例如我有一个文件a b 1a c 2d e 3d f 4怎么用perl程序将该文件变成a b 1 c 2 3d e 3 f 4 7
2025-05-09 09:22:59
推荐回答(2个)
回答1:

$lastHead = undef;
while (  ) {
    chomp;
    @data = split /\s/, $_;
    my $head = shift @data;
    
    if ( $head eq $lastHead ) {
        print " @data";
    }
    elsif ( $head ne $lastHead ) {
        print $/ unless not defined $lastHead ;
        print $head . " @data";
        $lastHead = $head;
    }
    else { next }    
}

__DATA__
a b 1
a c 2
d e 3
d f 4

回答2:

这是找规律吗