Если вы кодируете вид ясности, который будет понят тем, кто только начинает работать с Perl, традиционная конструкция this с высокой степенью ясности и разборчивости говорит, что это означает:
$string = join ', ', @array;
print "$string\n";
Эта конструкция задокументирована в perldoc -f
join
.
Однако мне всегда нравилось, как просто $,
делает это.Специальная переменная $"
предназначена для интерполяции, а специальная переменная $,
- для списков.Объедините любой из них с динамическим ограничением области действия 'local
', чтобы избежать появления волновых эффектов в сценарии:
use 5.012_002;
use strict;
use warnings;
my @array = qw/ 1 2 3 4 5 /;
{
local $" = ', ';
print "@array\n"; # Interpolation.
}
ИЛИ с $,:
use feature q(say);
use strict;
use warnings;
my @array = qw/ 1 2 3 4 5 /;
{
local $, = ', ';
say @array; # List
}
Специальные переменные $,
и $"
задокументированы в perlvar .Ключевое слово local
и способы его использования для ограничения последствий изменения значения глобальной переменной пунктуации, вероятно, лучше всего описано в perlsub .
Наслаждайтесь!