diff options
Diffstat (limited to 'libjava/java/util/regex')
-rw-r--r-- | libjava/java/util/regex/Matcher.java | 13 | ||||
-rw-r--r-- | libjava/java/util/regex/Pattern.java | 14 |
2 files changed, 21 insertions, 6 deletions
diff --git a/libjava/java/util/regex/Matcher.java b/libjava/java/util/regex/Matcher.java index 994893a..f8c8f1a 100644 --- a/libjava/java/util/regex/Matcher.java +++ b/libjava/java/util/regex/Matcher.java @@ -212,7 +212,10 @@ public final class Matcher if (match != null) { if (match.getStartIndex() == 0) - return true; + { + position = match.getEndIndex(); + return true; + } match = null; } return false; @@ -230,7 +233,13 @@ public final class Matcher */ public boolean matches () { - return find(0); + if (lookingAt()) + { + if (position == input.length()) + return true; + match = null; + } + return false; } /** diff --git a/libjava/java/util/regex/Pattern.java b/libjava/java/util/regex/Pattern.java index fa722cf..06418a2 100644 --- a/libjava/java/util/regex/Pattern.java +++ b/libjava/java/util/regex/Pattern.java @@ -198,8 +198,11 @@ public final class Pattern implements Serializable empties++; else { - while (empties-- > 0) - list.add(""); + while (empties > 0) + { + list.add(""); + empties--; + } String text = input.subSequence(start, end).toString(); list.add(text); @@ -222,8 +225,11 @@ public final class Pattern implements Serializable int max = limit - list.size(); empties = (empties > max) ? max : empties; } - while (empties-- > 0) - list.add(""); + while (empties > 0) + { + list.add(""); + empties--; + } } // last token at end |