我想創建一個子程序,增加了逗號元素,並增加了最後一個元素前一個「和」最後一個元素,例如,使「12345」成爲前「1,2,3,4和5」。我知道如何添加逗號,但問題是我得到的結果是「1,2,3,4和5」,我不知道如何擺脫最後的逗號。添加一個「和」一個逗號插陣列在Perl
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應該得到逗號。
任何幫助表示讚賞。
或者,如果任何人都可以提出這樣的一個完全不同的,更好的辦法,我所有的耳朵。 –
我不知道'加入',所以這一直照亮!感謝所有回覆的人。 –