public interface MatchResult
This interface contains query methods used to determine the
results of a match against a regular expression. The match boundaries,
groups and group boundaries can be seen but not modified through
a MatchResult
.
Matcher
Modifier and Type | Method and Description |
---|---|
int |
end()
Returns the offset after the last character matched.
|
int |
end(int group)
Returns the offset after the last character of the subsequence
captured by the given group during this match.
|
String |
group()
Returns the input subsequence matched by the previous match.
|
String |
group(int group)
Returns the input subsequence captured by the given group during the
previous match operation.
|
int |
groupCount()
Returns the number of capturing groups in this match result's pattern.
|
int |
start()
Returns the start index of the match.
|
int |
start(int group)
Returns the start index of the subsequence captured by the given group
during this match.
|
int start()
IllegalStateException
- If no match has yet been attempted,
or if the previous match operation failedint start(int group)
Capturing groups are indexed from left
to right, starting at one. Group zero denotes the entire pattern, so
the expression m.start(0)
is equivalent to
m.start()
.
group
- The index of a capturing group in this matcher's pattern-1
if the match was successful but the group
itself did not match anythingIllegalStateException
- If no match has yet been attempted,
or if the previous match operation failedIndexOutOfBoundsException
- If there is no capturing group in the pattern
with the given indexint end()
IllegalStateException
- If no match has yet been attempted,
or if the previous match operation failedint end(int group)
Capturing groups are indexed from left
to right, starting at one. Group zero denotes the entire pattern, so
the expression m.end(0)
is equivalent to
m.end()
.
group
- The index of a capturing group in this matcher's pattern-1
if the match was successful
but the group itself did not match anythingIllegalStateException
- If no match has yet been attempted,
or if the previous match operation failedIndexOutOfBoundsException
- If there is no capturing group in the pattern
with the given indexString group()
For a matcher m with input sequence s,
the expressions m.group()
and
s.substring(
m.start(),
m.end())
are equivalent.
Note that some patterns, for example a*
, match the empty
string. This method will return the empty string when the pattern
successfully matches the empty string in the input.
IllegalStateException
- If no match has yet been attempted,
or if the previous match operation failedString group(int group)
For a matcher m, input sequence s, and group index
g, the expressions m.group(
g)
and
s.substring(
m.start(
g),
m.end(
g))
are equivalent.
Capturing groups are indexed from left
to right, starting at one. Group zero denotes the entire pattern, so
the expression m.group(0)
is equivalent to m.group()
.
If the match was successful but the group specified failed to match
any part of the input sequence, then null
is returned. Note
that some groups, for example (a*)
, match the empty string.
This method will return the empty string when such a group successfully
matches the empty string in the input.
group
- The index of a capturing group in this matcher's patternnull
if the group
failed to match part of the inputIllegalStateException
- If no match has yet been attempted,
or if the previous match operation failedIndexOutOfBoundsException
- If there is no capturing group in the pattern
with the given indexint groupCount()
Group zero denotes the entire pattern by convention. It is not included in this count.
Any non-negative integer smaller than or equal to the value returned by this method is guaranteed to be a valid group index for this matcher.
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2016, Oracle and/or its affiliates. All rights reserved.
DRAFT 9-internal+0-2016-01-26-133437.ivan.openjdk9onspinwait