我有如下的 csv 文件。
Service Area Code Phone Numbers Preferences
17 9861511646 0 D 2
17 9861310397 0 D 2
13 9827035035 0 A 2
13 9827304969 0 D 2
13 9827355786 0 A 2
13 9827702373 0 A 2
17 9861424414 0 D 2
13 9827702806 0 A 2
23 9832380279 0 D 2
13 9827231370 0 D 2
13 9827163453 0 D 2
我想根据前 4 位数字创建新文件,如 9861.csv、9827.csv 等
9861.csv中的数据应该是这样的:
Service Area Code Phone Numbers Preferences
17 9861511646 0 D 2
17 9861310397 0 D 2
17 9861424414 0 D 2
在 9827.csv 数据中:
Service Area Code Phone Numbers Preferences
13 9827035035 0 A 2
13 9827304969 0 D 2
13 9827355786 0 A 2
13 9827702373 0 A 2
13 9827702806 0 A 2
13 9827231370 0 D 2
13 9827163453 0 D 2
这是我的代码
my $file = "mycsvfile.csv";
open(my $data, '<', $file) or die "Could not open '$file' $!\n";
while (my $line = <$data>) {
my @fields = split "," , $line;
my $first_four = substr ($fields[1], -10, 4,);
open $line{$first_four}, '>', "$first_four.csv";
print { $line{$first_four} } $line;
close OUT;
}