随意输入字符串,例如“我是Java程序员已经有3.5年的工作经验了”,把结果输出为:
我是
Java
程序员已经有
3.5
年的工作经验了
对字符串进行一下处理就行了 传入字符串 用正则表达式去判断字符串中是否存在字母(数字) 然后截取出来还是 怎样分开处理方法就很多了
public static void main(String[] args) {
System.out.print("我是\nJava\n程序员已经有\n3.5\n年的工作经验了");
}
string str = "我是Java程序员已经有3.5年的工作经验了";
str = Regex.Replace(str, "([a-zA-Z]+)|([0-9]+[.][0-9]+)|([0-9]+)", "\r\n" + "$0" + "\r\n");
Console.WriteLine(str);
String str = "我是Java程序员已经有3.5年的工作经验了";
Pattern pattern = Pattern.compile("^[a-zA-Z0-9.]*$");
StringBuffer sb=new StringBuffer();
boolean flag=false;
for (int i = 0; i < str.length(); i++) {
String s=str.substring(i, i+1);
if (pattern.matcher(s).matches()) {
if (!flag) {
sb=sb.append("\r\n"+s);
}else {
sb=sb.append(s);
}
flag=true;
}else {
if (flag) {
sb=sb.append("\r\n"+s);
}else {
sb=sb.append(s);
}
flag=false;
}
}
System.out.println(sb);
题目描述不清,3.5是字母?
string str = "我是Java程序员已经有3.5年的工作经验了";
str = Regex.Replace(str, "([a-zA-Z]+)|([0-9]+.[0-9]+)|([0-9]+)", "\r\n" + "$0" + "\r\n");
Console.WriteLine(str);