perl如何将一行中的数放入到数组中

来源:百度知道 编辑:UC知道 时间:2024/06/03 14:52:43
Magnoliophyta; Ericales; Actinidiaceae; Actinidia
如题
初学谢谢了
这是一篇中的一行

有txt文件:test.txt:
Magnoliophyta; Ericales; Actinidiaceae; Actinidia
有perl文件test.pl如下:
my @line;
$path="test.txt";
open IN,$path or die "can't open the $path .\n";
while(<IN>){
@line = split /\s+/, $_; # 以空格为分隔符把该行数据写入数组
}
close IN;
foreach (@line){
print $_, "\n";
}

如果是将这一行插入到数组的最后一个单元中,直接使用push(@array,'值'),就可以了;
看你上面的内容应该是将不同的单词放到数组的不同单元中,且提供的内容“Magnoliophyta; Ericales; Actinidiaceae; Actinidia”是以半角“;”做为分隔的,那么使用@array=split(/;/,'Magnoliophyta; Ericales; Actinidiaceae; Actinidia')就可以了;
例如(本例中用空格做为分隔):
my $crt="Magnoliophyta; Ericales; Actinidiaceae; Actinidia";
my @array=split(/\s/,$crt);
结果:
@array[0]='Magnoliophyta;';
@array[1]='Ericales;';
@array[2]='Actinidiaceae;';
@array[3]='Actinidia';

@array = ("Magnoliophyta" , "Ericales"