Извлечение числа между строкой и другой строкой в Java Regex

1

У меня есть строка вроде этого: meetingDes32-2 (например, meetingDes55-5 или meetingDes354-74). Мне нужно извлечь номер между текстом meetingDes и -2. В этих 3 примерах мне нужны: 32, 55 и 354.

Я новичок в регулярных выражениях.

Спасибо.

  • 0
    всегда ли число между "meetingDes" и "-"?
  • 0
    Ваши строки содержат только meetingDes32-2 т. Д., Или это часть большей строки?
Показать ещё 3 комментария
Теги:

3 ответа

2
Лучший ответ

Поскольку ваши строки не содержат ничего другого, просто замените биты, которые вы не хотите ни с чем, и используйте то, что осталось:

String s = "meetingDes32-2";
int num = Integer.parseInt(s.replaceAll("meetingDes|-.*", ""));
System.out.println(num); // 32
2

Другой подход, если вы находите регулярные выражения:

int end = indexOf('-');
int startIndex = 10;
String result = meetingDesString.substring(startIndex ,end);
0
(?<=meetingDes)\\d+\\b

Это должно сделать это за вас.

См. Демонстрацию.

http://regex101.com/r/zU7dA5/22

Ещё вопросы

Сообщество Overcoder
Наверх
Меню