0
进出口超出第一行目前新到perl ....Perl的打印在表格
所以我有一个表:
Name Age Steven 18 Joe 19 Peter 20
,我想在我的剧本打印出来的行“名称”中的第一列 所以它看起来是这样,当我运行该脚本:
Steven Joe Peter
我的脚本看起来像这样ATM:
#!/usr/bin/perl
use strict;
use warnings;
my $file=$ARGV[0];
my @array;
my $line;
my $row;
open (File, "< $file") or die "Input file: $!";
@array = <File>;
foreach $line (@array)
{
my @array1 = split(/\s+/, "$line");
my @row=split(/\s+/, "$array1[0]");
print $row[1];
}
当我运行它我似乎无法打印出我的数组字符串'史蒂文'。 我可以有一些指导吗?
您确实已将您的线段拆分并存储到'array1'中。这个变量是你的行。 – slowjack2k
不需要第二个“拆分”线。不需要引用变量,使用'$ line'和'$ array1 [0]'。对空格进行“拆分”的好方法是'split'',$ line;'其中''''是[split]的特殊模式(https://perldoc.perl.org/functions/split.html)(阅读链接的文档页面)。打开我的$ fh,'<',$ file或者“无法打开$ file:$!”,使用三参数'open'(直接更好) – zdim