dan wrote:

> I have a string, which is to represent a length of time, say 3d4h45m12s
> which can be variable, so you may end up with just 3m, or 5h2m, etc. What I
> need to do, is to take this string, and split it up into $days, $hours,
> $minutes etc, and then create that amount of time in seconds, which will
> then be added to the current timestamp to create an expiry time.

Try:

#!/usr/bin/perl -w

use strict;
use warnings;
my %timeHash;

my $str = "3d4h45m12s";
if ($str =~ /(\d+)d(\d+)h(\d+)m(\d+\.?d*)/) {
 $timeHash{'Day'} = $1;
 $timeHash{'Hour'} = $2;
 $timeHash{'Minute'} = $3;
 $timeHash{'Seconds'} = $4;
  print "Day = $timeHash{'Day'}; Hour = $timeHash{'Hour'}; " .
  "Minute = $timeHash{'Minute'}; Seconds = $timeHash{'Seconds'}\n";
}

Joseph


-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to