JAVA 一个或多个空格分割字符串

时间:2023-12-29 11:07:38

知识补充

  1. String的split方法支持正则表达式;

  2. 正则表达式\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);
}

三、分割结果

使用正确代码分割结果:

a
b
c
d
e
f
g

使用错误代码分割结果:

a

b

c

d
e
f g
四:编写的程序
    public static void main(String args[]) {

        String line = "good12 morning34 good56 night78";

        //对String进行split之后的数组的输出
String[] tt=line.split("\\s+");
for(String s:tt)
{
System.out.println(s);
}
System.out.println("#####");
} 输出结果为
good12
morning34
good56
night78