如何从数组中删除最后一个字符?

use*_*229 2 perl chop

有没有办法从数组中删除最后一个字符?

为了清楚起见,我并没有要求数组中的每个条目都删除了它的最后一个字符,只有最后一个进入数组的条目应该删除它的最后一个字符.

我看过chop/chomp/push/pop等,但很多与从字符串中删除值有关.

任何帮助都会很棒

谢谢

sim*_*que 9

chop是正确的工具,但需要一系列参数.如果你传递一个数组,所有元素都将被切断.相反,只需使用索引-1.这总是给你最后一个元素.

my @foo = qw(foo bar baz);
chop $foo[-1];
print Dumper \@foo;

# ['foo', 'bar', 'ba']
Run Code Online (Sandbox Code Playgroud)

来自doc:

如果你砍一个列表,每个元素都会被砍掉.仅返回最后一个印章的值.

  • 或者,如果数组可以为空,如果@foo,则切断$ foo [-1] (2认同)