I hope this is not too late to be useful -- even on topics beyond the scope of the original question.
#!/usr/bin/perl use 5.018; use strict; # NOT because it makes a difference here, but because +it will # (OFTEN!) point out typos and other mistakes use warnings; # 1119420 (my $time) = scalar localtime(); say "\t DEBUG \$time: |$time|"; # the vbars in the printout will he +lp you spot # mismatches between your expectati +ons & # the actual regex captures $time =~ /\s([A-Z]{3})/i; # you don't want to capture the pre +ceding space; the other my $month = $1; # changes are merely for laziness ( +compactness) and say "\t DEBUG \$month: |$month|"; # rely on the fact that all localti +me() months # are just 3 chars $time =~ /\s(\d+)\s/; my $day = $1; say "\t DEBUG \$day: |$day|"; say "\t ", $month, " " ,$day; # when printing to console, I find +output with # leading tabs makes the output mor +e legible. YMMV. if ( $month eq 'Mar' ){ # reformatting makes (again, YMMV) +the reading easier. print "\t true\n"; } else { print "\t false\n";} if ( $day =~ m{\d+} ) { # regex instead of == to accomodate + days_of_month 10 say "\t true"; # thru 31 but, would, of course ac +cept "47" as a } else { # day_of_month so would be a baaad +idea for some # origins of day_of_month. say "\t false"; }
Update: fixed typo s/<c><#!.../<c>#!..../ in markup
In reply to Re: value disappears in if statement
by ww
in thread value disappears in if statement
by ggadd
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |