我想创建一个向元素添加逗号并在最后一个元素之前添加“和”的子例程,例如,使“12345”变为“1、2、3、4 和 5”。我知道如何添加逗号,但问题是我得到的结果是“1、2、3、4 和 5”,我不知道如何去掉最后一个逗号。
sub commas {
my @with_commas;
foreach (@_) {
push (@with_commas, ($_, ", ")); #up to here it's fine
}
splice @with_commas, -2, 1, ("and ", $_[-1]);
@with_commas;
}
正如您可能知道的那样,我正在尝试删除新数组中的最后一个元素(@with_commas),因为它附加了逗号,并添加了旧数组中的最后一个元素(@_,传递给子例程来自主程序,没有添加逗号)。
当我运行它时,结果是,例如,“1、2、3、4 和 5”——最后是逗号。那个逗号是从哪里来的?只有@with_commas 应该得到逗号。
任何帮助表示赞赏。