my $time = "5H3M17S"; $time =~ /((\d+)H)?((\d+)M)?((\d+)S)?/; my $secs = 3600*$1 + 60*$3 + $5;