import java.time.Duration;
import java.util.stream.Stream;
public class Main {
public static void main
(String[] args
) { // Test
Stream.of(
"30min",
"2h 15min",
"2d 15h 30min"
).
forEach(s
-> System.
out.
println(s
+ " => " + toMillis
(s
) + "ms")); }
static long toMillis
(String strDuration
) { strDuration = strDuration.replaceAll("\\s+", "").replaceFirst("(\\d+d)", "P$1T");
strDuration = strDuration.charAt(0) != 'P' ? "PT" + strDuration.replace("min", "m")
: strDuration.replace("min", "m");
Duration duration = Duration.parse(strDuration);
return duration.toMillis();
}
}
aW1wb3J0IGphdmEudGltZS5EdXJhdGlvbjsKaW1wb3J0IGphdmEudXRpbC5zdHJlYW0uU3RyZWFtOwoKcHVibGljIGNsYXNzIE1haW4gewoJcHVibGljIHN0YXRpYyB2b2lkIG1haW4oU3RyaW5nW10gYXJncykgewoJCS8vIFRlc3QKCQlTdHJlYW0ub2YoCgkJCQkiMzBtaW4iLCAKCQkJCSIyaCAxNW1pbiIsIAoJCQkJIjJkIDE1aCAzMG1pbiIKCQkpLmZvckVhY2gocyAtPiBTeXN0ZW0ub3V0LnByaW50bG4ocyArICIgPT4gIiArIHRvTWlsbGlzKHMpICsgIm1zIikpOwoJfQoKCXN0YXRpYyBsb25nIHRvTWlsbGlzKFN0cmluZyBzdHJEdXJhdGlvbikgewoJCXN0ckR1cmF0aW9uID0gc3RyRHVyYXRpb24ucmVwbGFjZUFsbCgiXFxzKyIsICIiKS5yZXBsYWNlRmlyc3QoIihcXGQrZCkiLCAiUCQxVCIpOwoJCXN0ckR1cmF0aW9uID0gc3RyRHVyYXRpb24uY2hhckF0KDApICE9ICdQJyA/ICJQVCIgKyBzdHJEdXJhdGlvbi5yZXBsYWNlKCJtaW4iLCAibSIpCgkJCQk6IHN0ckR1cmF0aW9uLnJlcGxhY2UoIm1pbiIsICJtIik7CgkJRHVyYXRpb24gZHVyYXRpb24gPSBEdXJhdGlvbi5wYXJzZShzdHJEdXJhdGlvbik7CgkJcmV0dXJuIGR1cmF0aW9uLnRvTWlsbGlzKCk7Cgl9Cn0=