Beefy Boxes and Bandwidth Generously Provided by pair Networks
Problems? Is your data what you think it is?
 
PerlMonks  

Re: Array of variables

by choroba (Cardinal)
on Apr 27, 2017 at 16:01 UTC ( [id://1189058]=note: print w/replies, xml ) Need Help??


in reply to Array of variables

@Variable and @Variables are two different... well... variables.
#!/usr/bin/perl use warnings; use strict; use feature qw{ say }; my $Map_Request_Date = 'Jan 1 2017 12:00'; my $Map_Due_Date = 'Jan 31 2017 12:00'; my $Map_Cutover_Date = 'Feb 28 2017 23:59'; my $Map_Complete_Date = 'Mar 1 2017 12:01'; my $Map_Approved_Date = 'Dec 31 1999 0:01'; my @Variables = ($Map_Request_Date, $Map_Due_Date, $Map_Cutover_Date, $Map_Complete_Date, $Map_Approved_Date); my $X = 0; for my $Date_Ref (@Variables) { say $Date_Ref; $Date_Ref =~ s/ +/ /; #When day is a single digit it creates two w +hite spaces my ($Month, $Day, $Year, $Time) = split / /, $Date_Ref, 4; my %Months = ( Jan => '01', Feb => '02', Mar => '03', Apr => '04 +', May => '05', Jun => '06', Jul => '07', Aug => '08 +', Sep => '09', Oct => '10', Nov => '11', Dec => '12 +' ); $Day = "0$Day" if 1 == length $Day; $Variables[$X++] = "$Year-$Months{$Month}-$Day"; } say for @Variables;

for (same as foreach ) aliases the values it iterates over, so you don't need the array at all:

#!/usr/bin/perl use warnings; use strict; use feature qw{ say }; my $Map_Request_Date = 'Jan 1 2017 12:00'; my $Map_Due_Date = 'Jan 31 2017 12:00'; my $Map_Cutover_Date = 'Feb 28 2017 23:59'; my $Map_Complete_Date = 'Mar 1 2017 12:01'; my $Map_Approved_Date = 'Dec 31 1999 0:01'; for my $Date_Ref ($Map_Request_Date, $Map_Due_Date, $Map_Cutover_Date, $Map_Complete_Date, $Map_Approved_Date ) { say $Date_Ref; $Date_Ref =~ s/ +/ /; my ($Month, $Day, $Year, $Time) = split / /, $Date_Ref, 4; my %Months = ( Jan => '01', Feb => '02', Mar => '03', Apr => '04 +', May => '05', Jun => '06', Jul => '07', Aug => '08 +', Sep => '09', Oct => '10', Nov => '11', Dec => '12 +' ); $Day = sprintf '%02d', $Day; $Date_Ref = "$Year-$Months{$Month}-$Day"; } say for $Map_Request_Date, $Map_Due_Date, $Map_Cutover_Date, $Map_Complete_Date, $Map_Approved_Date;

Note the usage of sprintf to format the day.

But it's even easier when you use Time::Piece :

#!/usr/bin/perl use warnings; use strict; use feature qw{ say }; use Time::Piece; my $Map_Request_Date = 'Jan 1 2017 12:00'; my $Map_Due_Date = 'Jan 31 2017 12:00'; my $Map_Cutover_Date = 'Feb 28 2017 23:59'; my $Map_Complete_Date = 'Mar 1 2017 12:01'; my $Map_Approved_Date = 'Dec 31 1999 0:01'; for my $Date_Ref ($Map_Request_Date, $Map_Due_Date, $Map_Cutover_Date, $Map_Complete_Date, $Map_Approved_Date ) { say $Date_Ref; my $tp = 'Time::Piece'->strptime($Date_Ref, '%b %d %Y %H:%M'); $Date_Ref = $tp->ymd; } say for $Map_Request_Date, $Map_Due_Date, $Map_Cutover_Date, $Map_Complete_Date, $Map_Approved_Date;

($q=q:Sq=~/;[c](.)(.)/;chr(-||-|5+lengthSq)`"S|oS2"`map{chr |+ord }map{substrSq`S_+|`|}3E|-|`7**2-3:)=~y+S|`+$1,++print+eval$q,q,a,

Replies are listed 'Best First'.
Re^2: Array of variables
by Michael W (Initiate) on Apr 27, 2017 at 16:16 UTC

    This worked and retrained my mind

    adding to my notes of great wisdom

Re^2: Array of variables
by Anonymous Monk on Apr 27, 2017 at 17:12 UTC
    You did not address this clap trap of non-design:
    my $Map_Request_Date = 'Jan 1 2017 12:00'; my $Map_Due_Date = 'Jan 31 2017 12:00'; my $Map_Cutover_Date = 'Feb 28 2017 23:59'; my $Map_Complete_Date = 'Mar 1 2017 12:01'; my $Map_Approved_Date = 'Dec 31 1999 0:01'; for my $Date_Ref ($Map_Request_Date, $Map_Due_Date, $Map_Cutover_Date, $Map_Complete_Date, $Map_Approved_Date ) {
    And we still do not understand what the OP means by "issue do not know how to address an array of variable to place the data back into the array variable ..."

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://1189058]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others having an uproarious good time at the Monastery: (4)
As of 2024-04-26 00:21 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found