Из документации split
:
Если LIMIT отрицателен, он обрабатывается так, как если бы был указан произвольно большой LIMIT.
Это означает, что если вы сделаете что-то вроде:
my @fields = split( /\$/, $record, -1 );
... тогда вы получите пустые поля для последних трех записей в списке.
#!perl
use strict;
use warnings;
use Data::Dumper;
my $string = 'abc$$$';
my @fields = split( /\$/, $string, -1 );
print Dumper \@fields;
Thisотпечатки:
$VAR1 = [
'abc',
'',
'',
''
];