while (<>) {
chomp;
print join("t", (split /:/)[0, 2, 1, 5] ), "n";
}
Що робить (split /:/)[0, 2, 1, 5]
означає тут
Відповіді:
9 для відповіді № 1Це означає
my @fields = split /:/, $_;
my @fields_to_display = ($fields[0], $fields[2], $fields[1], $fields[5]);
створити список, розділивши рядок на:, потім взяти елементи 0,2,1,5 цього списку
7 для відповіді № 2
Це список скибочки.
З значень, повернутих split
, він повертає перше (індекс 0), третє (індекс 2), друге (індекс 1) і шосте (індекс 5) у такому порядку.
Чесно кажучи, це мало бути очевидним, якби ви запустили програму. Вперед і спробуйте!
4 для відповіді № 3
Він розділяє рядок, збережений у $_
(див. перлвар) за заданим регулярним виразом (в даному випадку одиничним :
) і вибирає елементи номер 0, 2, 1 і 5 з отриманого масиву.