- Code: Select all
proc stringtomin {input} {
set min 0; set result [regexp -all -inline "\[0-9\]+\[yMdhm\]+" $input]; foreach t $result { regexp "(\[0-9\]+)(\[a-zA-Z\])" $t full tal bog; switch $bog { "m" { incr min $tal } "h" { incr min [expr 60*$tal] } "d" { incr min [expr 24*60*$tal] } "M" { incr min [expr 30*24*60*$tal] } "y" { incr min [expr 365*24*60*$tal] } } }; return $min;
}
Will turn
20m into 20
8h20m into 500
4d8h20m into 6260
m = minutes
h = hours
d = days
M = months
y = years