题目描述
输入一行字符,分别统计出其中英文字母、数字、空格和其他字符的个数。
输入格式
一行字符,长度不超过200
输出格式
统计值
样例输入
aklsjflj123 sadf918u324 asdf91u32oasdf/.';123
样例输出
23 16 2 4
解题思路:使用正则表达式
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String str = scanner.nextLine();
int e_Count = 0; //英文
int n_Count = 0; //数字
int s_Count = 0; //空格
int o_Count = 0; //其他
if(str.length()<=200){
for(int i=1; i<=str.length(); i++){
String s = str.substring(i-1,i);
if(s.matches("[a-zA-Z]")){
e_Count++;
}else if(s.matches("[0-9]")){
n_Count++;
}else if(s.matches("\\s")){
s_Count++;
}else {
o_Count++;
}
}
System.out.println(e_Count+" "+n_Count+" "+s_Count+" "+o_Count+" ");
}else {
System.out.println("长度不超过200");
return;
}
}
}