Talk About Network

Google


Register and Login
Nick
Password
Register create new account Sign up is FREE and you can post replies, new topics, bookmark posts and more!
Recover lost password


Programming > Perl Beginners > Re: want to ass...
Latest [ Topics | Posts ] Archive Post A New Topic Post a Reply
<< Topic < Post Post 3 of 16 Topic 11061 of 11531
Post > Topic >>

Re: want to assign default value to variable I assign from split

by krahnj@[EMAIL PROTECTED] (John W. Krahn) May 13, 2008 at 04:32 AM

Jenda Krynicky wrote:
> From: Richard Lee <rich.japh@[EMAIL PROTECTED]
>
>>
>> I was doing (after the while loop)
>>
>> $file |= 'default'
>> $file2 |= 'default2'
>> $file3 |= 'default3'
>>
>> but I stopped and thought this cannot be so repetitious
>>
>> so I didn't want to but tried( I didn't want to put them in array since

>> I need to use individual named variable later)
>>
>> while (<FILE>) {
>>        my @[EMAIL PROTECTED]
 = (split( /\|/, $_))[3,4,6,7,12,40,41,42,43,46,56,64]
>> }
>> for (@[EMAIL PROTECTED]
) {
>>      $_  |= 'default';
>> }
>>
>> but is that the best way to do this?
> 
> So are the defaults the same or not?
> 
> If they are you can do something like
> 
>  while (<FILE>) {
>   
> my($file1,$file2,$file3,$file4,$file5,$file6,$file10,$file25,$file27)
>          = (split( /\|/, $_))[3,4,6,7,12,40,41,42,43,46,56,64];
>   
> for($file1,$file2,$file3,$file4,$file5,$file6,$file10,$file25,$file27)
>  {
>    $_  |= 'default';
>   }
>  }
> 
> Actually this seems to work as well:
> 
>  while (<FILE>) {
>   $_  |= 'default' for 
> (my($file1,$file2,$file3,$file4,$file5,$file6,$file10,$file25,$file27)
>          = (split( /\|/, $_))[3,4,6,7,12,40,41,42,43,46,56,64]);
>   # and some code using $file1, ...
>  }
> 
> If you want a different default for each field, you can't IMHO do 
> better than the original code.

Please note that |= does not do what you appear to think it does, you 
really want to use ||= instead.

$ perl -e'
use Data::Dumper;
$Data::Dumper::Useqq = 1;
$x = "one";
print Dumper $x;
$x |= "two";
print Dumper $x;
'
$VAR1 = "one";
$VAR1 = "\177\177o";



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
 




 16 Posts in Topic:
want to assign default value to variable I assign from split but
rich.japh@[EMAIL PROTECTE  2008-05-12 23:39:07 
Re: want to assign default value to variable I assign from split
Jenda@[EMAIL PROTECTED]   2008-05-13 08:14:35 
Re: want to assign default value to variable I assign from split
krahnj@[EMAIL PROTECTED]   2008-05-13 04:32:48 
Re: want to assign default value to variable I assign from split
rob.dixon@[EMAIL PROTECTE  2008-05-13 08:34:42 
Re: want to assign default value to variable I assign from split
rich.japh@[EMAIL PROTECTE  2008-05-13 18:22:38 
Re: want to assign default value to variable I assign from split
rob.dixon@[EMAIL PROTECTE  2008-05-14 01:02:40 
Re: want to assign default value to variable I assign from split
Uri Guttman <uri@[EMAI  2008-05-14 04:10:24 
Re: assign default value to variables I assign from split
rvtol+news@[EMAIL PROTECT  2008-05-13 09:56:02 
Re: assign default value to variables I assign from split
Jenda@[EMAIL PROTECTED]   2008-05-14 11:26:22 
Re: assign default value to variables I assign from split
rvtol+news@[EMAIL PROTECT  2008-05-14 22:45:24 
Re: assign default value to variables I assign from split
rich.japh@[EMAIL PROTECTE  2008-05-14 16:58:36 
Re: assign default value to variables I assign from split
krahnj@[EMAIL PROTECTED]   2008-05-14 15:10:26 
Re: assign default value to variables I assign from split
rich.japh@[EMAIL PROTECTE  2008-05-14 18:17:40 
Re: assign default value to variables I assign from split
rich.japh@[EMAIL PROTECTE  2008-05-28 22:30:09 
Re: assign default value to variables I assign from split
krahnj@[EMAIL PROTECTED]   2008-05-28 19:55:02 
Re: assign default value to variables I assign from split
rich.japh@[EMAIL PROTECTE  2008-05-29 00:01:32 

Post A Reply:
  Go here to Signup

AddThis Feed Button


About - Advertising - Contact - Frequently Asked Questions - Privacy Policy - Terms of Use - Signup

Contact
tan12V112 Fri Jul 25 19:21:26 CDT 2008.