Одна цифра :
val expression = "\"[\"pusher-decision-voting-started\",9]\""
val result : Long? = expression.firstOrNull { it.isDigit() }
?.toString()
?.toLong()
Плохая привычка: приведет к плохому результату, если вы захотите найти более 1 цифры.
Несколькоцифры :
val expression2 = "\"[\"pusher-decision-voting-started\",92]\""
val result2 : Long? = expression2.filter { it.isDigit() }
.takeIf { it.isNotEmpty() }
?.toLong()
Плохая привычка: приведет к неверному результату, если числа не близки друг к другу
Оба результата работают с пропущенными числами. Я надеюсь, что это подходит для вашего случая.