描述
输入一行字符,分别统计出包含英文字母、空格、数字和其它字符的个数。
本题包含多组输入。
数据范围:输入的字符串长度满足 1 \le n \le 1000 \1≤n≤1000
输入描述:
输入一行字符串,可以有空格
输出描述:
统计其中英文字符,空格字符,数字字符,其他字符的个数
示例1
输入:
1qazxsw23 edcvfr45tgbn hy67uj m,ki89ol.\\/;p0-=\\][复制
输出:
26 3 10 12
import java.util.*;
public class Main{public static void main(String[] args){
Scanner sc=new Scanner(System.in);
while(sc.hasNext()){
int count1=0,count2=0,count3=0,count4=0;
String str=sc.nextLine();
for(int i=0;i<str.length();i++){
char c=str.charAt(i);
if(Character.isLetter(c)){
count1++;
}else if(Character.isSpaceChar(c)){
count2++;
}else if(Character.isDigit(c)){
count3++;
}else{
count4++;
}
}
System.out.println(count1);
System.out.println(count2);
System.out.println(count3);
System.out.println(count4);
}
}
}
答案2:
public static void test2(){ Scanner sc=new Scanner(System.in); while(sc.hasNext()){ String str=sc.nextLine(); String s1=str.replaceAll("[A-Z]+|[a-z]+", ""); System.out.println(str.length()-s1.length());//字母个数 String s2=s1.replaceAll(" ", ""); System.out.println(s1.length()-s2.length());//空白字符个数 String s3=s2.replaceAll("[0-9]+", ""); System.out.println(s2.length()-s3.length()+"\n"+s3.length());//数字个数+其它字符个数 }