Pattern.matcher()
Создаёт объект Matcher, который ищет совпадения шаблона в конкретной строке.
Доступно с: Java 1.4
Синтаксис
public Matcher matcher(CharSequence input)Параметры
| Параметр | Тип | Описание |
|---|---|---|
| input | CharSequence | Строка, в которой ищем. |
Возвращаемое значение
MatcherНовый Matcher; у него есть find(), matches(), group(), replaceAll().
Примеры
Типичная связка — compile, matcher, find:
void main() {
Pattern pattern = Pattern.compile("\\d+");
Matcher matcher = pattern.matcher("Room 42, floor 7");
while (matcher.find()) {
IO.println(matcher.group());
}
}Результат:
42
7Примечания
Matcher хранит состояние поиска (текущую позицию), поэтому его не используют из нескольких потоков одновременно. Для новой строки создайте новый Matcher или вызовите matcher.reset(newInput).
См. также
- Pattern.compile() — Компилирует регулярное выражение в объект Pattern, который можно использовать много раз.
- Matcher.find() — Ищет следующее совпадение шаблона в любом месте строки.
- Matcher.matches() — Проверяет, соответствует ли шаблону вся строка целиком.
- Matcher.group() — Возвращает текст найденного совпадения или его группы в скобках.
В учебнике
- Регулярные выражения — Регулярные выражения в Java: matches, replaceAll, split по шаблону, классы Pattern и Matcher, группы и экранирование обратной косой черты.