Java 中的 CharMatcher 类
CharMatcher 类可以为任何 Java 字符值确定真或假值,就像 Predicate 对任何对象执行一样。
序号 | 方法及描述 |
---|---|
1 | CharMatcher and(CharMatcher other)返回一个匹配器,该匹配器匹配此匹配器和 other 匹配的任何字符。 |
2 | static CharMatcher anyOf(CharSequence sequence)返回一个字符匹配器,该匹配器匹配给定字符序列中存在的任何字符。 |
3 | boolean apply(Character character)已弃用。仅提供以满足 Predicate 接口;请改用 matches(char)。 |
4 | String collapseFrom(CharSequence sequence, char replacement)返回输入字符序列的字符串副本,其中匹配此匹配器的连续字符组被单个替换字符替换。 |
5 | int countIn(CharSequence sequence)返回在字符序列中找到的匹配字符数。 |
6 | static CharMatcher forPredicate(Predicate<? super Character> predicate)返回一个与给定基于 Character 的谓词具有相同行为的匹配器,但该匹配器在原始 char 实例上运行。 |
7 | int indexIn(CharSequence sequence)返回字符序列中第一个匹配字符的索引,如果不存在匹配字符,则返回 -1。 |
使用您选择的任何编辑器在例如 C:/> Guava 中创建以下 Java 程序。
示例
以下是 GuavaTester.java 代码:
import com.google.common.base.CharMatcher; import com.google.common.base.Splitter; public class GuavaTester { public static void main(String args[]) { GuavaTester tester = new GuavaTester(); tester.testCharMatcher(); } private void testCharMatcher() { System.out.println(CharMatcher.DIGIT.retainFrom("mahesh123")); // only the digits System.out.println(CharMatcher.WHITESPACE.trimAndCollapseFrom(" Mahesh Parashar ", ' ')); // trim whitespace at ends, and replace/collapse whitespace into single spaces System.out.println(CharMatcher.JAVA_DIGIT.replaceFrom("mahesh123", "*")); // star out all digits System.out.println(CharMatcher.JAVA_DIGIT.or(CharMatcher.JAVA_LOWER_CASE).retainFrom("mahesh123")); // eliminate all characters that aren't digits or lowercase } }
使用 javac 编译器编译该类,如下所示
C:\Guava>javac GuavaTester.java
现在运行 GuavaTester 以查看结果:
C:\Guava>java GuavaTester
输出
这将产生以下输出:
123 Mahesh Parashar mahesh*** mahesh123
广告