|
Build 1.0_r1(from source) | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectjava.util.regex.Matcher
public final class Matcher
Provides a means of matching regular expressions against a given input,
finding occurrences of regular expressions in a given input, or replacing
parts of a given input. A Matcher instance has an associated Pattern instance and an input text. A typical use case is to
iteratively find all occurrences of the Pattern, until the end of
the input is reached, as the following example illustrates:
Pattern p = Pattern.compile("[A-Za-z]+");
Matcher m = p.matcher("Hello, Android!");
while (m.find()) {
System.out.println(m.group()); // prints "Hello" and "Android"
}
The Matcher has a state that results from the previous operations.
For example, it knows whether the most recent attempt to find the
Pattern was successful and at which position the next attempt would
resume the search. Depending on the application's needs, it may become
necessary to explicitly reset() this state from time to time.
| Constructor Summary | |
|---|---|
Matcher(Pattern pattern,
CharSequence input)
Creates a matcher for a given combination of pattern and input. |
|
| Method Summary | |
|---|---|
Matcher |
appendReplacement(StringBuffer buffer,
String replacement)
Appends a literal part of the input plus a replacement for the current match to a given StringBuffer. |
StringBuffer |
appendTail(StringBuffer buffer)
Appends the (unmatched) remainder of the input to the given StringBuffer. |
int |
end()
Returns the index of the first character following the text that matched the whole regular expression. |
int |
end(int group)
Returns the index of the first character following the text that matched a given group. |
protected void |
finalize()
Called by the virtual machine when there are no longer any (non-weak) references to the receiver. |
boolean |
find()
Returns the next occurrence of the Pattern in the input. |
boolean |
find(int start)
Returns the next occurrence of the Pattern in the input. |
String |
group()
Returns the text that matched the whole regular expression. |
String |
group(int group)
Returns the text that matched a given group of the regular expression. |
int |
groupCount()
Returns the number of groups in the results, which is always equal to the number of groups in the original regular expression. |
boolean |
hasAnchoringBounds()
Indicates whether this matcher has anchoring bounds enabled. |
boolean |
hasTransparentBounds()
Indicates whether this matcher has transparent bounds enabled. |
boolean |
hitEnd()
Indicates whether the last match hit the end of the input. |
boolean |
lookingAt()
Tries to match the Pattern, starting from the beginning of the
region (or the beginning of the input, if no region has been set). |
boolean |
matches()
Tries to match the Pattern against the entire region (or the
entire input, if no region has been set). |
Pattern |
pattern()
Returns the Pattern instance used inside this matcher. |
static String |
quoteReplacement(String s)
Returns a replacement string for the given one that has all backslashes and dollar signs escaped. |
Matcher |
region(int start,
int end)
Resets this matcher and sets a region. |
int |
regionEnd()
Returns this matcher's region end, that is, the first character that is not considered for a match. |
int |
regionStart()
Returns this matcher's region start, that is, the first character that is considered for a match. |
String |
replaceAll(String replacement)
Replaces all occurrences of this matcher's pattern in the input with a given string. |
String |
replaceFirst(String replacement)
Replaces the first occurrence of this matcher's pattern in the input with a given string. |
boolean |
requireEnd()
Indicates whether more input might change a successful match into an unsuccessful one. |
Matcher |
reset()
Resets the Matcher. |
Matcher |
reset(CharSequence input)
Provides a new input and resets the Matcher. |
int |
start()
Returns the index of the first character of the text that matched the whole regular expression. |
int |
start(int group)
Returns the index of the first character of the text that matched a given group. |
MatchResult |
toMatchResult()
Converts the current match into a separate MatchResult instance
that is independent from this matcher. |
Matcher |
useAnchoringBounds(boolean value)
Determines whether this matcher has anchoring bounds enabled or not. |
Matcher |
usePattern(Pattern pattern)
Sets a new pattern for the Matcher. |
Matcher |
useTransparentBounds(boolean value)
Determines whether this matcher has transparent bounds enabled or not. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
Matcher(Pattern pattern,
CharSequence input)
pattern - the pattern to use.input - the input to use.| Method Detail |
|---|
public Matcher reset()
Matcher. This results in the region being set to the
whole input. Results of a previous find get lost. The next attempt to
find an occurrence of the Pattern in the string will start at the
beginning of the input.
Matcher itself.public Matcher reset(CharSequence input)
Matcher. This results in the
region being set to the whole input. Results of a previous find get lost.
The next attempt to find an occurrence of the Pattern in the
string will start at the beginning of the input.
input - the new input sequence.
Matcher itself.public Matcher usePattern(Pattern pattern)
Matcher. Results of a previous find
get lost. The next attempt to find an occurrence of the Pattern
in the string will start at the beginning of the input.
pattern - the new Pattern.
Matcher itself.public Pattern pattern()
Pattern instance used inside this matcher.
Pattern instance.public int groupCount()
groupCount in interface MatchResult
public Matcher region(int start,
int end)
start - the first character of the region.end - the first character after the end of the region.
Matcher itself.public int regionStart()
public int regionEnd()
public Matcher useAnchoringBounds(boolean value)
value - the new value for anchoring bounds.
Matcher itself.public boolean hasAnchoringBounds()
Matcher uses anchoring bounds.public Matcher useTransparentBounds(boolean value)
value - the new value for transparent bounds.
Matcher itself.public boolean hasTransparentBounds()
Matcher uses anchoring bounds.public boolean find()
Pattern in the input. If a
previous match was successful, the method continues the search from the
first character following that match in the input. Otherwise it searches
either from the region start (if one has been set), or from position 0.
public boolean find(int start)
Pattern in the input. The
method starts the search from the given character in the input.
start - The index in the input at which the find operation is to
begin. If this is less than the start of the region, it is
automatically adjusted to that value. If it is beyond the end
of the region, the method will fail.
public boolean matches()
Pattern against the entire region (or the
entire input, if no region has been set).
Pattern matches the entire
region.public boolean lookingAt()
Pattern, starting from the beginning of the
region (or the beginning of the input, if no region has been set).
Doesn't require the Pattern to match against the whole region.
Pattern matches.
public int start()
throws IllegalStateException
start in interface MatchResultIllegalStateException - if no successful match has been made.
public int start(int group)
throws IllegalStateException
start in interface MatchResultgroup - the group, ranging from 0 to groupCount() - 1, with 0
representing the whole pattern.
IllegalStateException - if no successful match has been made.public int end()
end in interface MatchResultIllegalStateException - if no successful match has been made.public int end(int group)
end in interface MatchResultgroup - the group, ranging from 0 to groupCount() - 1, with 0
representing the whole pattern.
IllegalStateException - if no successful match has been made.public String group()
group in interface MatchResultIllegalStateException - if no successful match has been made.public String group(int group)
group in interface MatchResultgroup - the group, ranging from 0 to groupCount() - 1, with 0
representing the whole pattern.
IllegalStateException - if no successful match has been made.public boolean hitEnd()
public boolean requireEnd()
public MatchResult toMatchResult()
MatchResult instance
that is independent from this matcher. The new object is unaffected when
the state of this matcher changes.
MatchResult.
IllegalStateException - if no successful match has been made.
public Matcher appendReplacement(StringBuffer buffer,
String replacement)
throws IllegalStateException
StringBuffer. The literal part is exactly the
part of the input between the previous match and the current match. The
method can be used in conjunction with find() and
appendTail(StringBuffer) to walk through the input and replace
all occurrences of the Pattern with something else.
buffer - the StringBuffer to append to.replacement - the replacement text.
Matcher itself.
IllegalStateException - if no successful match has been made.public StringBuffer appendTail(StringBuffer buffer)
StringBuffer. The method can be used in conjunction with
find() and appendReplacement(StringBuffer, String) to
walk through the input and replace all matches of the Pattern
with something else.
buffer - the StringBuffer to append to.
StringBuffer.
IllegalStateException - if no successful match has been made.public String replaceAll(String replacement)
replacement - the replacement text.
public String replaceFirst(String replacement)
replacement - the replacement text.
public static String quoteReplacement(String s)
s - the input string.
protected void finalize()
ObjectNote: The virtual machine assumes that the implementation in class Object is empty.
finalize in class Object
|
Build 1.0_r1(from source) | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||