1、不用正则表达式,split和trim版
String str = " The sky is blue "; int l=0,r=str.length()-1; while(l<r && str.charAt(l)==‘ ‘) l++; while(r>0&&str.charAt(r)==‘ ‘) r--; String tempStr=str.substring(l, r+1);//除去两边空格 System.out.println(tempStr); StringBuilder stb=new StringBuilder(); int lindex=0,rindex=tempStr.length()-1,temp=tempStr.length(); while(rindex>0) { while(tempStr.charAt(rindex)!=‘ ‘&& rindex!=0) { rindex--; //System.out.println(rindex); } if(rindex==0) { stb.append(tempStr.substring(rindex,temp)); break; } stb.append(tempStr.substring(rindex+1,temp)+" "); while(tempStr.charAt(rindex)==‘ ‘&& rindex>0) { rindex--; //System.out.println(rindex); } temp=rindex+1; } System.out.println(stb+"");
2、正则表达式 trim () split()版
String str=" The sky is blue "; String[] str2=str.trim().split("\\s+"); for (int i = str2.length-1; i >0; i--) { System.out.print(str2[i]+" "); } System.out.println(str2[0]);
\转义字符 \s 空格 +代表多个空格
以空格为界,分割字符串
原文地址:https://www.cnblogs.com/lovelingdu/p/9432327.html
时间: 2024-10-15 09:07:43