Иногда может понадобиться получить больше информации о соответствии, чем простая индикация присутствия шаблона во входящем потоке. Это одна из ситуаций, в которых полезны группы регулярных выражений. Группа — это пронумеровання часть регулярного выражения. Например, в следующем выражении — (\d+)zzz — присутствуют две группы. Группа с номером 0 всегда относится ко всему выражению, а группа 1 — к подвыражению, начинающемуся с открывающей круглой скобки «(» и заканчивающемуся закрывающей круглой скобкой «)». Текст соответствующих групп сохраняется обнаружителем соответствий регулярного выражения и может быть извлечён в дальнейшем в регулярном выражении. Для извлечения текста соответствующей группы используется метод класса Matcher — String group(int groupNumber) ; общее количество групп возвращает метод класса Matcher — int groupCount()
Заключение
Регулярное выражение описывается в Java-программе с помощью строк, подходящих под определённый правилами шаблон. При выполнении кода Java перекомпилирует эту строку в объект класс Pattern
и использует объект класса Matcher
для поиска соответствий в тексте.
Регулярные выражения на примерах можно посмотреть по ссылке