Я пытаюсь использовать регулярное выражение, но не могу найти правильный результат.
Pattern pattern = Pattern.compile(" - ");
Matcher matcher = pattern.matcher("test - test2");
Это должно дать мне "тест"
while (matcher.find()) {
String fichierPart1 = matcher.group(1);
}
Я не могу получить результат с помощью этого кода. Спасибо за помощь




Нет группы 1 - есть только одно совпадение, «-».
онлайн-тестер регулярных выражений упрощает понимание.
Если вы хотите пройти «тест», почему бы не сделать "test - test".split(" - ")? Это возвращает массив значений, разделенных - - test и test в вашем случае.
Ваш шаблон должен быть чем-то сложным: регулярные выражения - не лучший вариант для разделения текста.
Кроме того, регулярные выражения имеют собственный синтаксис, который необходимо проанализировать перед оценкой шаблона. Итак, это большая часть работы, которую ваше приложение бесполезно пытается выполнять.
Я предлагаю вам, согласно комментарию @Wiktor Stribiżew, использовать String.split(). Попробуйте вот что:
for (String part : "test - test2".split(" - ")) {
}
Ваш шаблон будет использоваться в методе
.split. Просто используйте"test - test2".split(" - ")