JAVA版本:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数

题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
题目分析:统计某一种类型的数量的时候,只要将特定的类型重字符中取出,用原来的长度-剩下的长度=某个特定类型的数量。
而正则表达式能很快的取出其中的指定类型。

 public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入需要分类的字符串:");
        //获取输入字符串
        String st=sc.nextLine();
        //关闭输入流
        sc.close();
        //定义三个变量来存储所需要的值
        int zm=0;
        int kg=0;
        int sz=0;
        //使用正则表达式清除字符串中所有字母
        zm =st.length()-(st.replaceAll("[a-zA-Z]","")).length();
        //清除字符串中所有空格
        kg =st.length()-(st.replaceAll("[ ]","")).length();
        //清除字符串中所有的数字
        sz =st.length()-(st.replaceAll("[0-9]","")).length();
        System.out.println("这个字符串中字母有"+zm+"\n空格有:"+kg+"\n数字有:"+sz);
    }

结果为:
JAVA版本:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数_第1张图片

你可能感兴趣的:(java算法,应用题,java)