in reply to help manipulating data in an array.

First as atcroft pointed out, you most likely wanted to m// an array element, not the array (or the size of the array in fact).

Also, what if your array has less than 100 elements, in that case you would get error saying that you used unintialized value in m//. BTW, please use strict.

You probably want something like this: (your code indicated that you want to look at the first 100 elemnts only, I assume this is true)

use strict; use warnings; my @number = (1,2,3,9432, 5,6,7); my $count=0; for (0 .. (($#number < 99) ? $#number : 99)) { if ($number[$count]=~/^9432$/g) { print "match found\n"; } else { print "match failed\n"; } $count++; }

Now a little bit more on m// with array. the m// will actually be performed on scalar(@array), which is the number of elements:

use strict; use warnings; my @number1 = (2 .. 9432); my @number2 = (2 .. 9433); #I intentionally avoided the use of (1.. 94 +32) here, to remove the doubt whether it compares against the last el +ement of the array. my @number3 = (2 .. 9434); my $count=0; if (@number1 =~ /^9432$/g) { print "match found\n"; } else { print "match failed\n"; } if (@number2 =~ /^9432$/g) { print "match found\n"; } else { print "match failed\n"; } if (@number3 =~ /^9432$/g) { print "match found\n"; } else { print "match failed\n"; }