我有一个文件:
1:2; 3; 4
我想将该文件分解为以分号分隔的constuitiemt部分
#!/usr/bin/perl
use strict;
use warnings;
my $filename = shift @ARGV ;
open(my $fh, '<', $filename) or die "Could not open file $filename $!";
my @splitoncolong = split /;/, $fh ;
foreach my $wap (@splitoncolong) {
print $wap ;
}
我明白了
GLOB(0x238947c)
我想要的是什么:
1;
2;
3;
4;
答案 0 :(得分:2)
您忘了从文件句柄中读取内容。
# V V
my @splitoncolong = split /;/, <$fh>;
您尝试分割文件句柄对象的方式,当用split
进行字符串化处理时,它会变成您现在看到的全局引用表示形式。它在;
上分割,产生一个结果,即字符串GLOB(0x...)
,并将其放入列表中。