如果是将这一行插入到数组的最后一个单元中,直接使用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';
有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(
@line = split /\s+/, $_; # 以空格为分隔符把该行数据写入数组
}
close IN;
foreach (@line){
print $_, "\n";
}
@array = ("Magnoliophyta" , "Ericales" , "Actinidiaceae" , "Actinidia ") ;
print $array[0]."\n" ;