Forum Moderators: coopster & phranque

Message Too Old, No Replies

converting over to 24 hr fornat

         

branmh

12:25 am on Aug 6, 2003 (gmt 0)

10+ Year Member



I would like to convert this 7 PM into 19, but using REG-EX?

seindal

12:49 pm on Aug 6, 2003 (gmt 0)

10+ Year Member



Try this:

$a = '7 PM';
$a =~ s/\b(\d\d?)\s+([AP]M\b)/$2 eq 'PM'? $1+12 : $1/eg;
print "$a\n";

branmh

7:11 pm on Aug 9, 2003 (gmt 0)

10+ Year Member



This works but 12 pm turns into 24... Which needs to be 12...

seindal

9:03 pm on Aug 9, 2003 (gmt 0)

10+ Year Member



$a = '12 PM';
$a =~ s/\b(\d\d?)\s+([AP]M\b)/$2 eq 'PM'? ($1+12)%12 : $1/eg;
print "$a\n";

Storyteller

2:43 am on Aug 10, 2003 (gmt 0)

10+ Year Member



From my production code:

# Handle am/pm:
$time_string =~ s/am//i
or $time_string =~ s/(\d+?)(:.+¦)pm/($1+12).$2/ei;

Be sure to replace ¦ with the real pipe symbol (copy/paste will break the code!) It gets converted by forum software for some obscure reason.

branmh

1:44 pm on Aug 10, 2003 (gmt 0)

10+ Year Member



How would I convert 12:00 PM over to just 12, 1:00 PM to 13?