... if you don't want or need to keep your "dirty" array you could modify it in-place ...
noviceuser: Note that because map aliases via $_ (on which s/// operates by default), the dirty array is already being modified in place:
With Perl version 5.14 and after, one can use the /r modifier with s/// (and tr/// y///) to avoid this modify-in-place behavior when operating on the default $_ alias. See s///Win8 Strawberry 5.8.9.5 (32) Wed 06/16/2021 10:11:33 C:\@Work\Perl\monks >perl use strict; use warnings; use Test::More tests => 2; 1..2 my @array1 = ('foo', 'bar'); my @array2 = (" foo\n", ',bar,'); my @clean = map { s/[\s,]//mg; $_ } @array2; is_deeply \@clean, \@array1, "new, cleaned array"; is_deeply \@array2, \@array1, "dirty array modified in place"; ^Z ok 1 - new, cleaned array ok 2 - dirty array modified in place
Give a man a fish: <%-{-{-{-<
In reply to Re^6: how to strip spaces, commas or new lines from an array
by AnomalousMonk
in thread how to ignore spaces, commas or new line of an array when comparing
by noviceuser
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |