У меня есть строка вроде этого: meetingDes32-2
(например, meetingDes55-5
или meetingDes354-74
). Мне нужно извлечь номер между текстом meetingDes
и -2
. В этих 3 примерах мне нужны: 32, 55 и 354.
Я новичок в регулярных выражениях.
Спасибо.
Поскольку ваши строки не содержат ничего другого, просто замените биты, которые вы не хотите ни с чем, и используйте то, что осталось:
String s = "meetingDes32-2";
int num = Integer.parseInt(s.replaceAll("meetingDes|-.*", ""));
System.out.println(num); // 32
Другой подход, если вы находите регулярные выражения:
int end = indexOf('-');
int startIndex = 10;
String result = meetingDesString.substring(startIndex ,end);
(?<=meetingDes)\\d+\\b
Это должно сделать это за вас.
См. Демонстрацию.
meetingDes32-2
т. Д., Или это часть большей строки?