如何从perl中的所有数组元素中减去1

时间:2014-05-26 11:29:26

标签: perl

我有一个包含值的数组。我需要从每个数组元素中减去1并且保存在那里。

例如:

chop $tve_005;
@words = split (/,/, $tve_005);

现在@words包含:

524210
1713409
311919
1422134
16658312

但是在其余代码中需要使用的实际值是:(总是减去1)

524209
1713408
311918
1422133
16658311

如何减去并保存相同的数组。

2 个答案:

答案 0 :(得分:8)

除了Pradeep的解决方案,一些字符更短:

#!/usr/bin/perl

my @words = (524210,1713409,311919,1422134,16658312);

$_-- for @words;

答案 1 :(得分:4)

试试这个

#!/usr/bin/perl

my @words = (524210,1713409,311919,1422134,16658312);

@words = map { $_ - 1 } @words;