простое совпадение с шаблоном регулярного выражения - PullRequest
0 голосов
/ 02 ноября 2018

Я пытаюсь использовать регулярное выражение, но не могу найти правильный результат.

Pattern pattern = Pattern.compile(" - ");
Matcher matcher = pattern.matcher("test - test2");

Это должно дать мне "тест"

    while (matcher.find()) {
        String fichierPart1 = matcher.group(1);
    }

Я не могу получить результат с этим кодом. Спасибо за вашу помощь

Ответы [ 2 ]

0 голосов
/ 02 ноября 2018

Ваш шаблон должен быть чем-то сложным: регулярные выражения - не лучший выбор для разделения текстов.

Кроме того, регулярные выражения имеют собственный синтаксис, который необходимо проанализировать перед оценкой шаблона. Итак, это большая работа, которую ваше приложение пытается сделать бесполезно.

Я предлагаю вам, согласно комментарию @Wiktor Stribiżew, использовать String.split(). Попробуйте только это:

for (String part : "test - test2".split(" - ")) {
}
0 голосов
/ 02 ноября 2018

Нет группы 1 - есть только одно совпадение, "-".

онлайн-тестер регулярных выражений значительно облегчает понимание.

Если вы хотите получить «тест», почему бы не сделать "test - test".split(" - ")? Это возвращает массив значений, разделенных - - test и test в вашем случае.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...