Java机试题:统计字符(使用正则统计各种类型的字符个数)


import java.util.Scanner;

public class Main {
    
    public static void main(String[] args) {
         Scanner sc = new Scanner(System.in);
         while(sc.hasNextLine()) {
             String str = sc.nextLine();
             // 英文字符
             System.out.println(str.replaceAll("[^a-zA-Z]", "").length());
             // 各种空白字符,回车,空格等
             System.out.println(str.replaceAll("[^\\s]", "").length());
             // 数字长度,即替换掉不是数字的
             System.out.println(str.replaceAll("[^0-9]", "").length());
             // 替换掉以上三种,就是其他的
             System.out.println(str.replaceAll("[0-9|a-z|A-Z|\\s]", "").length());
         }
    }
}