Spec-Zone.ru › OpenJDK 8

Интерфейс 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.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API