String的split方法支持正则表达式;
正则表达式
\s
表示匹配任何空白字符,+
表示匹配一次或多次。
一、待分割字符串
String str = "a b c d e f g"
其中,字符串中的的空白分别为:单个空格,多个空格,tab制表符。
二、使用一个或多个空格分割字符串
正确代码如下:
String [] arr = str.split("\\s+"); for(String ss : arr){ System.out.println(ss); }
作为对比,错误代码如下:
测试代码如下:String [] arr2 = str.split(" "); for(String ss : arr2){ System.out.println(ss); }
public class StringMul{ //1.字符串分割 public static String[]str1(String str) { System.out.println("方法一:"); String [] arr = str.split(" "); return arr; } //2.字符串分割 public static String[]str2(String str) { System.out.println("方法二:"); String [] arr = str.split("\\s+"); return arr; } public static void main(String[]args) { String str = "ab cdef g"; String[]arr=str1(str); for(String ss : arr){ System.out.println(ss); } String[]arr2=str2(str); for(String ss : arr2){ System.out.println(ss); } } }