in reply to Help understand why this grep does not work
@results = grep { /$match/ } @data2; [download]
To add a new value (or values) to an array, use push:
push @results, grep { /$match/ } @data2; [download]