You should try creating another array with just 'Test MMA' in it and give it a try. Or perhaps, you could just try copying the following into a new file and test to see if it works. If it does than you know something is wrong with your array definition.
Looks like you pasted/edited something funny or there were control characters messing with your cut/paste. This snippet is not legal Perl so it's not what's really there. Make sure to have use strict and use warnings on.
The error is generated because of using a carriage return in a string used as a hash key as shown by the following code:
#!/usr/bin/perl
use strict;
use warnings;
my %hash = ("Common SW Component" => "4885");
my $variable = "foo\r";
print "variable ending with carrige return is =$variable=\n";
print "$hash{$variable}\n";