SCUT2017软院机试第一题

题目

输入一个字符串,要求输出能把所有的小写字符放前面,大写字符放中间,数字放后面,并且中间用空格隔开,如果同种类字符间有不同种类的字符,输出后也要用字符隔开

如:

输入:12abc3KF12

输出:abc KF 12 3 12 

输入: rwr21r3hello666world

输出 :rwr r hello world 21 3 666

题目来源:https://blog.csdn.net/Claudia_xuan/article/details/88075759 
 

实现

package cn.hncu.scut2017;
import java.util.Scanner;

public class SplitString {

	public static void main(String[] args) {
		Scanner sc=new Scanner(System.in);
		while(sc.hasNext()){
			String str=sc.nextLine().trim();
			String number=str.replaceAll("[a-zA-Z]+", " ").trim();
			String lowStr=str.replaceAll("[0-9A-Z]+", " ").trim();
			String upStr=str.replaceAll("[0-9a-z]+", " ").trim();
			if(lowStr.length()>0){
				System.out.print(lowStr+" ");
			}
			if(upStr.length()>0){
				System.out.print(upStr+" ");
			}
			if(number.length()>0){
				System.out.println(number);
			}
		}
	}

}

果然java对于字符串的处理有着独到的优势啊。

你可能感兴趣的:(考研路上)