in reply to Want to add a ROW # field to an pre-existing array

As screamingeagle says, your question is a little vague. So let's make some assumptions: it would appear that you have an array of arrays with each inner array being one record. And when you say "Is there a way to create a row" it seems that you mean, "Is there a way to create a column..."

If I'm on the right track we want to look first at those individual records which are each an (anonymous) array. For inserting values into the middle of an array, you need to use splice(). But to add elements to the beginning or end of an array, the following are each quite sufficient:

@array = ($new, @array); # new 1st element or @array = (@array, $new); # new last element or @array = ($new, @array, $new2); # both
In the case of an aoa (array of arrays), we need to be a little more tricky with things but the principle is the same:
#!/usr/bin/perl -w use strict; # Fudge up some sample data my @records = (['Eagle', 'Bird', 'Feathers'], ['Moose', 'Mammal', 'Fur'], ['Adder', 'Snake', 'Skin']); # Insert the record number column @records = map { [$_, @{$records[$_]}] } (0..$#records); # Show the result print "@$_\n" for @records;
If you like things a little more verbose and plain-spoken, you can substitute the following for the map line:
for my $i (0..$#records) { @{$records[$i]} = ($i, @{$records[$i]}); }
Hope this helps.

David

------------------------------------------------------------
"Perl is a mess and that's good because the
problem space is also a mess.
" - Larry Wall