-2

$a[1]总是以 a 开头,(总是$a[5]以 a 结尾)

有没有办法在不添加更多行的情况下摆脱那些?

while (my $line = <F>) {

    if ($line =~ m/test /) {
    my @a = split / /, $line;
        printf("%s %2s %4s %4s %.5s\n",$a[0], $a[1], $a[2], $a[5], $a[13]);
    } else {
        print $line;
    }
}
4

1 回答 1

3

你可以使用substr

printf("%s %2s %4s %4s %.5s\n", $a[0], substr($a[1], 1), $a[2], substr($a[5], 0, -1), $a[13]);
于 2012-12-30T23:59:49.493 回答