> -----Original Message----- > From: Ho, Tony [mailto:[EMAIL PROTECTED]] > Subject: "Use of uninitialized value" error message > > Hi guys > I was wondering if you could help me with the following problem. > > I am getting the following error message: > > Use of uninitialized value in string ne at > format_imsi_msisdn.pl line 257. > > line 257 and beyond consist of the following: > > if ($result_value1 ne " ") { > $a= substr($result_value1, 0, 8); > $b= substr($result_value1, 8, 2); > $c= substr($result_value1, 10, 2); > return ($a, $b, $c); > } > else { > return (" ", " ", " "); > } > > I declare the variable result_value1 at the begining of the method as > follows > > my $result_value1 =" "; > > Any ideas why ?
I'm still new to Perl myself, so I can't tell you exactly what's happening, but it looks like $result_value1 is undef when it gets to the if statement. I think a better way to accomplish what you're trying to do is simply: my $result_value1; if ($result_value) { #$result_value1 is defined $a= substr($result_value1, 0, 8); $b= substr($result_value1, 8, 2); $c= substr($result_value1, 10, 2); } else { #$result_value1 is still undef return (" ", " ", " "); } Hope this helps... Jason CONFIDENTIALITY NOTICE: ************************************************************************ The information contained in this ELECTRONIC MAIL transmission is confidential. It may also be privileged work product or proprietary information. This information is intended for the exclusive use of the addressee(s). If you are not the intended recipient, you are hereby notified that any use, disclosure, dissemination, distribution [other than to the addressee(s)], copying or taking of any action because of this information is strictly prohibited. ************************************************************************