У этого класса отсутствуют конструкторы. Вместо этого для создания объекта класса Маtcher вызывается фабричный метод matcher(), определяемый в классе Pattern.
Как только объект класса Matcher будет создан, его методы можно использовать для выполнения различных операций сопоставления с шаблоном.
Самым простым для сопоставления с шаблоном является метод matches(), который просто определяет, совпадает ли последовательность символов с шаблоном. Общая форма этого метода приведена ниже.
1 |
boolean matches() |
Этот метод возвращает логическое значение true, если последовательность символов совпадает и шаблоном, а иначе — логическое значение false. Следует, однако, иметь в виду, что с шаблоном должна совпадать вся последовательность символов, а не только ее часть (т.е. подпоследовательность).
Чтобы определить, совпадает ли с шаблоном подпоследовательность из входной последовательности символов, следует вызвать метод find(). Ниже приведена одна из его общих форм.
1 |
boolean find() |
Этот метод возвращает логическое значение true, если подпоследовательность совпадает с шаблоном, а иначе — логическое значение false. Метод find() можно вызывать неоднократно, чтобы находить все совпадающие подпоследовательности. При каждом вызове метода find() сравнение начинается с того места, где было завершено предыдущее сравнение.
Символьную строку, содержащую последнюю совпавшую последовательность, можно получить, вызвав метод group(). Ниже приведена одна из его общих форм:
1 |
String group() |
Этот метод возвращает совпавшую символьную строку. Если ни одного совпадения не обнаружено, генерируется исключение типа IllegalStateException.
Вызвав метод start(), можно получить индекс текущего совпадения во входной последовательности символов, а индекс, следующий после текущего совпадения — вызвав метод end(). Ниже приведены общие формы этих методов. В отсутствие совпадений оба эти метода генерируют исключение типа IllegalStateException.
1 2 |
int start() int end() |
Каждую совпавшую последовательность символов можно заменить другой последовательностью, вызвав метод replaceAll(). Его общая форма выглядит следующим образом:
1 |
String replaceAll(String новая_строка) |
где параметр новая_строка определяет новую последовательность символов, которая будет заменять последовательности, совпавшие с шаблоном. Обновленная входная последовательность будет возвращена в виде символьной строки.