我有一个日期数组。我试图添加逗号到数组的元素。我正在使用加入。 我需要在最后一个元素中添加逗号。 这是我的意见 - 2020 02 20 我的输出应该是 - 2020,02,20,
这是我的代码
@date = join( ',',@date); or @date = join( map "$_,",@date );
我无法在最后一个元素上获得逗号。如果只使用加入就可以实现这一点真的很棒。
提前致谢。
答案 0 :(得分:10)
尝试:
my $date = join(',', @date, '');
即。告诉join
还有一个额外的元素。
注意:join
的输出是单个标量字符串,而不是另一个数组,因此上面是$date
。
答案 1 :(得分:5)
要为作业使用正确的功能 - 您应该使用map
来更改数组的所有元素,并将它们与join
my $date = join('', map { "$_," } @date);
答案 2 :(得分:4)
我正在尝试将逗号添加到数组的元素中。
$_ = "$_," for @date;
但是如果您尝试创建字符串而不是修改数组,则可以使用以下内容:
my $date = join '', map "$_,", @date;
使用以下聪明但仍然可读的方法可以加快上述步骤:
my $date = join ',', @date, '';
答案 3 :(得分:3)
要修改数组的所有元素,map是一个合适的工具:
use warnings;
use strict;
my @date = qw(2020 02 20);
@date = map "$_,", @date;
use Data::Dumper;
print Dumper(\@date);
__END__
$VAR1 = [
'2020,',
'02,',
'20,'
];