Интерфейс MatchResult
- Все известные реализующие классы:
Matcher
public interface MatchResult
Результат операции сопоставления.
Этот интерфейс содержит методы запроса, используемые для определения результатов сопоставления с регулярным выражением. Границы совпадения, группы и границы групп могут быть просмотрены, но не изменены через MatchResult.
- С момента:
- 1.5
- См. также:
Matcher
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
int |
end() |
Возвращает смещение после последнего совпавшего символа. |
int |
end(int group) |
Возвращает смещение после последнего символа подпоследовательности, захваченной заданной группой во время этого совпадения. |
String |
group() |
Возвращает подпоследовательность входных данных, соответствующую предыдущему совпадению. |
String |
group(int group) |
Возвращает подпоследовательность входных данных, захваченную заданной группой во время предыдущей операции сопоставления. |
int |
groupCount() |
Возвращает количество захватывающих групп в шаблоне этого результата сопоставления. |
int |
start() |
Возвращает начальный индекс совпадения. |
int |
start(int group) |
Возвращает начальный индекс подпоследовательности, захваченной заданной группой во время этого совпадения. |
Методы
start
int start()
Возвращает начальный индекс совпадения.
- Возвращает:
- Индекс первого совпавшего символа
- Выбрасывает:
-
IllegalStateException- Если попытка сопоставления еще не была предпринята или предыдущая операция сопоставления завершилась неудачно
start
int start(int group)
Возвращает начальный индекс подпоследовательности, захваченной заданной группой во время этого совпадения.
Захватывающие группы индексируются слева направо, начиная с единицы. Группа ноль обозначает весь шаблон, поэтому выражение m.start(0) эквивалентно m.start().
- Параметры:
-
group- Индекс захватывающей группы в шаблоне этого согласователя - Возвращает:
- Индекс первого символа, захваченного группой, или
-1, если сопоставление было успешным, но сама группа ничего не сопоставила - Выбрасывает:
-
IllegalStateException- Если попытка сопоставления еще не была предпринята или предыдущая операция сопоставления завершилась неудачно -
IndexOutOfBoundsException- Если в шаблоне нет захватывающей группы с заданным индексом
end
int end()
Возвращает смещение после последнего совпавшего символа.
- Возвращает:
- Смещение после последнего совпавшего символа
- Выбрасывает:
-
IllegalStateException- Если попытка сопоставления еще не была предпринята или предыдущая операция сопоставления завершилась неудачно
end
int end(int group)
Возвращает смещение после последнего символа подпоследовательности, захваченной заданной группой во время этого совпадения.
Захватывающие группы индексируются слева направо, начиная с единицы. Группа ноль обозначает весь шаблон, поэтому выражение m.end(0) эквивалентно m.end().
- Параметры:
-
group- Индекс захватывающей группы в шаблоне этого согласователя - Возвращает:
- Смещение после последнего символа, захваченного группой, или
-1, если сопоставление было успешным, но сама группа ничего не сопоставила - Выбрасывает:
-
IllegalStateException- Если попытка сопоставления еще не была предпринята или предыдущая операция сопоставления завершилась неудачно -
IndexOutOfBoundsException- Если в шаблоне нет захватывающей группы с заданным индексом
group
String group()
Возвращает подпоследовательность входных данных, соответствующую предыдущему совпадению.
Для согласователя m с входной последовательностью s выражения m.group() и s.substring(m.start(), m.end()) эквивалентны.
Обратите внимание, что некоторые шаблоны, например a*, соответствуют пустой строке. Этот метод вернёт пустую строку, когда шаблон успешно соответствует пустой строке во входных данных.
- Возвращает:
- Подпоследовательность (возможно, пустая), соответствующая предыдущему совпадению, в виде строки
- Выбрасывает:
-
IllegalStateException- Если попытка сопоставления еще не была предпринята или предыдущая операция сопоставления завершилась неудачно
group
String group(int group)
Возвращает подпоследовательность входных данных, захваченную заданной группой во время предыдущей операции сопоставления.
Для согласователя m, входной последовательности s и индекса группы g, выражения m.group(g) и s.substring(m.start(g
), m.end(g)) эквивалентны.
Захватывающие группы индексируются слева направо, начиная с единицы. Группа ноль обозначает весь шаблон, поэтому выражение m.group(0) эквивалентно m.group().
Если сопоставление было успешным, но указанная группа не сопоставила никакую часть входной последовательности, то возвращается null. Обратите внимание, что некоторые группы, например (a*), соответствуют пустой строке. Этот метод вернёт пустую строку, когда такая группа успешно соответствует пустой строке во входных данных.
- Параметры:
-
group- Индекс захватывающей группы в шаблоне этого согласователя - Возвращает:
- Подпоследовательность (возможно, пустая), захваченная группой во время предыдущего совпадения, или
null, если группа не сопоставила часть входных данных - Выбрасывает:
-
IllegalStateException- Если попытка сопоставления еще не была предпринята или предыдущая операция сопоставления завершилась неудачно -
IndexOutOfBoundsException- Если в шаблоне нет захватывающей группы с заданным индексом
groupCount
int groupCount()
Возвращает количество захватывающих групп в шаблоне этого результата сопоставления.
Группа ноль обозначает весь шаблон по умолчанию. Она не включается в этот счёт.
Любое целое число, меньшее или равное возвращаемому значению этого метода, гарантированно является допустимым индексом группы для этого согласователя.
- Возвращает:
- Количество захватывающих групп в шаблоне этого согласователя
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/regex/MatchResult.html