Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things
 
PerlMonks  

Re: Matching Dates

by choroba (Cardinal)
on Mar 22, 2020 at 02:26 UTC ( [id://11114536]=note: print w/replies, xml ) Need Help??


in reply to Matching Dates

Without seeing the actual code I can't help you with the details, but the general idea is correct:
#!/usr/bin/perl use warnings; use strict; use feature qw{ say }; use enum qw( DATE TIME ); my @reservations = ([ '2020-03-21', '2:00 pm' ], [ '2020-03-21', '3:00 pm' ], [ '2020-03-22', '2:00:pm' ]); my $last_date = ""; for my $reservation (@reservations) { print $last_date eq $reservation->[DATE] ? ' ' x 10 : $reservation +->[DATE]; say ' ', $reservation->[TIME]; $last_date = $reservation->[DATE]; }
Output:
2020-03-21 2:00 pm 3:00 pm 2020-03-22 2:00:pm
map{substr$_->[0],$_->[1]||0,1}[\*||{},3],[[]],[ref qr-1,-,-1],[{}],[sub{}^*ARGV,3]

Replies are listed 'Best First'.
Re^2: Matching Dates
by Aldebaran (Curate) on Mar 24, 2020 at 02:19 UTC

    I wasn't familiar with enum in perl as opposed to C, so I found this interesting to replicate and then supplement from the examples given in enum.pm:

    date is 0 time is 1 2020-03-21 2:00 pm 3:00 pm 2020-03-22 2:00:pm 6 is SIX pref is 2 date is Months_Feb 1 c is 22
    #!/usr/bin/perl use warnings; use strict; use feature qw{ say }; use enum qw( DATE TIME ); say "date is ", DATE; say "time is ", TIME; my @reservations = ( [ '2020-03-21', '2:00 pm' ], [ '2020-03-21', '3:00 pm' ], [ '2020-03-22', '2:00:pm' ] ); my $last_date = ""; for my $reservation (@reservations) { print $last_date eq $reservation->[DATE] ? ' ' x 10 : $reservation-> +[DATE]; say ' ', $reservation->[TIME]; $last_date = $reservation->[DATE]; } use enum qw(Forty=40 FortyOne Five=5 Six Seven); # Yes, you can change the start indexs at any time as in C say "6 is ", "SIX"; use enum qw(:Prefix_ One Two Three); ## Creates Prefix_One, Prefix_Two, Prefix_Three say "pref is ", Prefix_Three; use enum qw( :Months_=0 Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec :Days_=0 Sun Mon Tue Wed Thu Fri Sat :Letters_=20 A..Z ); say "date is Months_Feb ", Months_Feb; say "c is ", Letters_C;

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others surveying the Monastery: (8)
As of 2024-04-19 12:27 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found