int i = Integer.parseInt("blah123yeah4yeah".replaceAll("\\D", ""));
// i == 1234
Обратите внимание, как это "объединит" цифры из разных частей строк в одно число. Если у вас есть только один номер, это все равно работает. Если вам нужен только первый номер, вы можете сделать что-то вроде этого:
int i = Integer.parseInt("x-42x100x".replaceAll("^\\D*?(-?\\d+).*$", "$1"));
// i == -42
Регулярное выражение немного сложнее, но оно в основном заменяет всю строку первой содержащейся в ней последовательностью цифр (с необязательным знаком минус) перед использованием Integer.parseInt
для разбора в целое число.