菜单

Java String.split() 方法的一个误区

duckflew
发布于 2020-09-18 / 203 阅读
0
0

Java String.split() 方法的一个误区

Java String.split() 方法

当字符串中有大量空格时 用split函数分离的方法如下

知识补充

  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
g1234567

使用错误代码分割结果:

a

b




c

d
e
f





g

评论