题解 | #统计字符#

统计字符

http://www.nowcoder.com/practice/539054b4c33b4776bc350155f7abd8f5

import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern;

public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in);

    while(sc.hasNextLine()) {
    // Use regex to judge if the character is letter digigt or another
        java.lang.String regexLetter = "[a-zA-Z]";
        Pattern rl = Pattern.compile(regexLetter);
        java.lang.String regexDigit = "[0-9]";
        Pattern rd = Pattern.compile(regexDigit);
        java.lang.String regexWhiteSpace = "[\\s]";
        Pattern rws = Pattern.compile(regexWhiteSpace);
        char[] chars = sc.nextLine().toCharArray();
        int isLetter = 0, isDigit = 0, isWhiteSpace = 0, isAnother = 0;
        for(int i = 0; i < chars.length; i++) {
            if(rl.matcher(Character.toString(chars[i])).matches()) {
                isLetter++;
            } else if(rd.matcher(Character.toString(chars[i])).matches()) {
                isDigit++;
            } else if (rws.matcher(Character.toString(chars[i])).matches()) {
                isWhiteSpace++;
            } else {
                isAnother++;
            }
        }
        System.out.println(isLetter);
        System.out.println(isWhiteSpace);
        System.out.println(isDigit);
        System.out.println(isAnother);
    }
}

}

全部评论

相关推荐

ohs的小木屋:比不少实习待遇高了
点赞 评论 收藏
分享
今天投了小鹏,收到了AI面,大概会问哪些啊?
期末一定及格:总共4个部分,心理测评、行测、然后就是问岗位、对岗位的理解、过往遇到了哪些难点怎么解决,很简单,没有什么特别专业的问题,都是一些综合素质相关的
小鹏汽车AI面6人在聊
点赞 评论 收藏
分享
06-04 09:27
门头沟学院 Java
点赞 评论 收藏
分享
06-02 15:17
门头沟学院 Java
心爱的idea:怎么会呢 应该是打招呼有问题 问就说实习6个月全国可飞随时到岗
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务