Lines Matching refs:sequence

223         @Override public int indexIn(CharSequence sequence) {
224 return (sequence.length() == 0) ? -1 : 0;
227 @Override public int indexIn(CharSequence sequence, int start) {
228 int length = sequence.length();
233 @Override public int lastIndexIn(CharSequence sequence) {
234 return sequence.length() - 1;
237 @Override public boolean matchesAllOf(CharSequence sequence) {
238 checkNotNull(sequence);
242 @Override public boolean matchesNoneOf(CharSequence sequence) {
243 return sequence.length() == 0;
246 @Override public String removeFrom(CharSequence sequence) {
247 checkNotNull(sequence);
251 @Override public String replaceFrom(CharSequence sequence, char replacement) {
252 char[] array = new char[sequence.length()];
257 @Override public String replaceFrom(CharSequence sequence, CharSequence replacement) {
258 StringBuilder retval = new StringBuilder(sequence.length() * replacement.length());
259 for (int i = 0; i < sequence.length(); i++) {
265 @Override public String collapseFrom(CharSequence sequence, char replacement) {
266 return (sequence.length() == 0) ? "" : String.valueOf(replacement);
269 @Override public String trimFrom(CharSequence sequence) {
270 checkNotNull(sequence);
274 @Override public int countIn(CharSequence sequence) {
275 return sequence.length();
303 @Override public int indexIn(CharSequence sequence) {
304 checkNotNull(sequence);
308 @Override public int indexIn(CharSequence sequence, int start) {
309 int length = sequence.length();
314 @Override public int lastIndexIn(CharSequence sequence) {
315 checkNotNull(sequence);
319 @Override public boolean matchesAllOf(CharSequence sequence) {
320 return sequence.length() == 0;
323 @Override public boolean matchesNoneOf(CharSequence sequence) {
324 checkNotNull(sequence);
328 @Override public String removeFrom(CharSequence sequence) {
329 return sequence.toString();
332 @Override public String replaceFrom(CharSequence sequence, char replacement) {
333 return sequence.toString();
336 @Override public String replaceFrom(CharSequence sequence, CharSequence replacement) {
338 return sequence.toString();
341 @Override public String collapseFrom(CharSequence sequence, char replacement) {
342 return sequence.toString();
345 @Override public String trimFrom(CharSequence sequence) {
346 return sequence.toString();
349 @Override public int countIn(CharSequence sequence) {
350 checkNotNull(sequence);
385 @Override public String replaceFrom(CharSequence sequence, char replacement) {
386 return sequence.toString().replace(match, replacement);
438 * sequence.
440 public static CharMatcher anyOf(final CharSequence sequence) {
441 switch (sequence.length()) {
445 return is(sequence.charAt(0));
447 final char match1 = sequence.charAt(0);
448 final char match2 = sequence.charAt(1);
465 final char[] chars = sequence.toString().toCharArray();
483 * sequence.
485 public static CharMatcher noneOf(CharSequence sequence) {
486 return anyOf(sequence).negate();
563 @Override public boolean matchesAllOf(CharSequence sequence) {
564 return original.matchesNoneOf(sequence);
567 @Override public boolean matchesNoneOf(CharSequence sequence) {
568 return original.matchesAllOf(sequence);
571 @Override public int countIn(CharSequence sequence) {
572 return sequence.length() - original.countIn(sequence);
728 * Returns {@code true} if a character sequence contains at least one matching character.
729 * Equivalent to {@code !matchesNoneOf(sequence)}.
731 * <p>The default implementation iterates over the sequence, invoking {@link #matches} for each
734 * @param sequence the character sequence to examine, possibly empty
735 * @return {@code true} if this matcher matches at least one character in the sequence
738 public boolean matchesAnyOf(CharSequence sequence) {
739 return !matchesNoneOf(sequence);
743 * Returns {@code true} if a character sequence contains only matching characters.
745 * <p>The default implementation iterates over the sequence, invoking {@link #matches} for each
748 * @param sequence the character sequence to examine, possibly empty
749 * @return {@code true} if this matcher matches every character in the sequence, including when
750 * the sequence is empty
752 public boolean matchesAllOf(CharSequence sequence) {
753 for (int i = sequence.length() - 1; i >= 0; i--) {
754 if (!matches(sequence.charAt(i))) {
762 * Returns {@code true} if a character sequence contains no matching characters. Equivalent to
763 * {@code !matchesAnyOf(sequence)}.
765 * <p>The default implementation iterates over the sequence, invoking {@link #matches} for each
768 * @param sequence the character sequence to examine, possibly empty
769 * @return {@code true} if this matcher matches every character in the sequence, including when
770 * the sequence is empty
772 public boolean matchesNoneOf(CharSequence sequence) {
773 return indexIn(sequence) == -1;
779 * Returns the index of the first matching character in a character sequence, or {@code -1} if no
782 * <p>The default implementation iterates over the sequence in forward order calling {@link
785 * @param sequence the character sequence to examine from the beginning
788 public int indexIn(CharSequence sequence) {
789 int length = sequence.length();
791 if (matches(sequence.charAt(i))) {
799 * Returns the index of the first matching character in a character sequence, starting from a
802 * <p>The default implementation iterates over the sequence in forward order, beginning at {@code
805 * @param sequence the character sequence to examine
807 * sequence.length()}
811 * sequence.length()}
813 public int indexIn(CharSequence sequence, int start) {
814 int length = sequence.length();
817 if (matches(sequence.charAt(i))) {
825 * Returns the index of the last matching character in a character sequence, or {@code -1} if no
828 * <p>The default implementation iterates over the sequence in reverse order calling {@link
831 * @param sequence the character sequence to examine from the end
834 public int lastIndexIn(CharSequence sequence) {
835 for (int i = sequence.length() - 1; i >= 0; i--) {
836 if (matches(sequence.charAt(i))) {
844 * Returns the number of matching characters found in a character sequence.
846 public int countIn(CharSequence sequence) {
848 for (int i = 0; i < sequence.length(); i++) {
849 if (matches(sequence.charAt(i))) {
857 * Returns a string containing all non-matching characters of a character sequence, in order. For
865 public String removeFrom(CharSequence sequence) {
866 String string = sequence.toString();
894 * Returns a string containing all matching characters of a character sequence, in order. For
902 public String retainFrom(CharSequence sequence) {
903 return negate().removeFrom(sequence);
907 * Returns a string copy of the input character sequence, with each character that matches this
915 * character, then iterates the remainder of the sequence calling {@link #matches(char)} for each
918 * @param sequence the character sequence to replace matching characters in
920 * character in {@code sequence}
924 public String replaceFrom(CharSequence sequence, char replacement) {
925 String string = sequence.toString();
941 * Returns a string copy of the input character sequence, with each character that matches this
942 * matcher replaced by a given replacement sequence. For example: <pre> {@code
951 * @param sequence the character sequence to replace matching characters in
953 * character in {@code sequence}
957 public String replaceFrom(CharSequence sequence, CharSequence replacement) {
960 return removeFrom(sequence);
963 return replaceFrom(sequence, replacement.charAt(0));
966 String string = sequence.toString();
988 * Returns a substring of the input character sequence that omits all characters this matcher
1002 public String trimFrom(CharSequence sequence) {
1003 int len = sequence.length();
1008 if (!matches(sequence.charAt(first))) {
1013 if (!matches(sequence.charAt(last))) {
1018 return sequence.subSequence(first, last + 1).toString();
1022 * Returns a substring of the input character sequence that omits all characters this matcher
1030 public String trimLeadingFrom(CharSequence sequence) {
1031 int len = sequence.length();
1035 if (!matches(sequence.charAt(first))) {
1040 return sequence.subSequence(first, len).toString();
1044 * Returns a substring of the input character sequence that omits all characters this matcher
1052 public String trimTrailingFrom(CharSequence sequence) {
1053 int len = sequence.length();
1057 if (!matches(sequence.charAt(last))) {
1062 return sequence.subSequence(0, last + 1).toString();
1066 * Returns a string copy of the input character sequence, with each group of consecutive
1075 * character, then iterates the remainder of the sequence calling {@link #matches(char)} for each
1078 * @param sequence the character sequence to replace matching groups of characters in
1080 * matching characters in {@code sequence}
1084 public String collapseFrom(CharSequence sequence, char replacement) {
1085 int first = indexIn(sequence);
1087 return sequence.toString();
1091 StringBuilder builder = new StringBuilder(sequence.length())
1092 .append(sequence.subSequence(0, first))
1095 for (int i = first + 1; i < sequence.length(); i++) {
1096 char c = sequence.charAt(i);
1112 * groups of matching characters at the start or end of the sequence are removed without
1116 public String trimAndCollapseFrom(CharSequence sequence, char replacement) {
1117 int first = negate().indexIn(sequence);
1121 StringBuilder builder = new StringBuilder(sequence.length());
1123 for (int i = first; i < sequence.length(); i++) {
1124 char c = sequence.charAt(i);