Обновление:
Если вы хотите с одним регулярным выражением, используйте следующий код:
Pattern pattern = Pattern.compile("BKN.*?\\s+(\\d+)FT");
Matcher matcher = pattern.matcher(String1);
if (matcher.find()) {
System.out.println(matcher.group(1));
}
Старый Во-первых, вам нужно получить подстроку, начиная с BKN, поэтому
int startIndex = String1.indexOf("BKN");
String str = String1.subString(startIndex);
Тогда вам нужно сократить его между BKN и FT, чтобы получить индекс FT
.
startIndex = 0;
int endIndex = str.indexOf("FT")+1;
str = str.subString(startIndex,endIndex);
И, наконец, вы можете использовать это регулярное выражение и удалять нецифровые символы из строки
str = str.replaceAll("\\D+","");
Вывод строки1: 2400
Выход String2: 700