Java 中的 CharMatcher 类

javaobject oriented programmingprogramming更新于 2025/7/9 22:04:17

CharMatcher 类确定任何 Java char 值的真值或假值,就像 Predicate 对任何对象所做的那样。

Sr.No方法和说明
1CharMatcher and(CharMatcher other)返回一个匹配器,该匹配器与此匹配器和其他匹配器都匹配的任何字符相匹配。
2static CharMatcher anyOf(CharSequence serial)返回一个匹配给定字符序列中任何字符的 char 匹配器。
3boolean apply(Character character)已弃用。仅提供以满足 Predicate 接口;改用 matches(char)。
4String collapseFrom(CharSequence serial, char replacement)返回输入字符序列的字符串副本,其中与此匹配器匹配的每一组连续字符都由单个替换字符替换。
5int countIn(CharSequence serial)返回在字符序列中找到的匹配字符数。
6static CharMatcher forPredicate(Predicate<? super Character> predicate)返回具有与给定的基于 Character 的谓词相同行为的匹配器,但它对原始 char 实例进行操作。
7int indexIn(CharSequence 序列)返回字符序列中第一个匹配字符的索引,如果不存在匹配字符,则返回 -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")); // 仅限数字
      System.out.println(CharMatcher.WHITESPACE.trimAndCollapseFrom(" Mahesh Parashar ", ' '));
      // 修剪末尾的空格,并将空格替换/折叠为单个空格
      System.out.println(CharMatcher.JAVA_DIGIT.replaceFrom("mahesh123", "*"));
      // 删除所有数字                
      System.out.println(CharMatcher.JAVA_DIGIT.or(CharMatcher.JAVA_LOWER_CASE).retainFrom("mahesh123"));
      // 删除所有非数字或小写字母的字符
   }
}

使用 javac 编译器编译该类,如下所示

C:\Guava>javac GuavaTester.java

现在运行 GuavaTester 以查看结果−

C:\Guava>java GuavaTester

输出

这将产生以下输出 −

123
Mahesh Parashar
mahesh***
mahesh123

相关文章


有用资源