Вы можете использовать регулярное выражение и удалять не-цифры.
str = "PT1H24M30S";
str = str.replaceAll("\\D+","");
После переводить в секунды
или можно так:
int PT = 0;//дни
int HH = 0; //часы
int MM = 0;//минуты
int SS = 0;//секунды
проверяем первый символ строки "PT1H24M30S"
str = "PT1H24M30S";
char ch = str.charAt(0);
if (ch == "P") {
if(str.charAt(3).isDigit()){ //если четвертый символ цифра
TT = str.charAt(2) + str.charAt(3)
}else (PT = str.charAt(2))
//и удаляй в строке PT1H24M30S PT1 больше не пригодится и дальше опять прогоняешь по часам и ид
}
и проверяем если там P то 2 и 3(если это цифра) символ этой строки часы
так же делаем минуты и секунды