Sayed, Irfan (Irfan) wrote: > Hi All, Hello,
> Following is my code.... > > # /usr/bin/perl > use strict; > use warnings; > > my $CT = "/usr/atria/bin/cleartool"; > my @vob_list = `$CT lsvob -s`; > my $ele; > my @vob_list1; > my $i; > my $size; > $size = $#vob_list+1; > > for ($i=0;$i<=$size;$i++) > { > $ele = $vob_list[$i]; > $ele =~ s/$ele/"$ele",/g; > $vob_list1[$i] = $ele; > } > > I am getting following error. > > Use of uninitialized value in regexp compilation at apply_trigger1.pl > line 16. > Use of uninitialized value in substitution (s///) at apply_trigger1.pl > line 16. > Use of uninitialized value in substitution (s///) at apply_trigger1.pl > line 16. Your for loop could be written more simply as: for ( @vob_list ) { s/$_/"$_",/g; } However you could use map and avoid the loop and substitution altogether: my @vob_list1 = map qq{"$_",}, `$CT lsvob -s`; And if you really need to populate both arrays @vob_list and @vob_list1 then: my @vob_list1 = map qq{"$_",}, my @vob_list = `$CT lsvob -s`; John -- Perl isn't a toolbox, but a small machine shop where you can special-order certain sorts of tools at low cost and in short order. -- Larry Wall -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] http://learn.perl.org/