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]