笔者在开发中,遇到需要对三方接口返回的报文进行处理,将对方填充的所有空格干掉,截取成list
使用正则表达式:split(“\s+”)
public static void main(String[] args) {
		String str = "1111        22 33       888";
		// 将以上信息进行分割,传统的split(" ")已经无法满足我们的需求
		String[] split = str.split("\\s+");
		List<String> stringList = Arrays.asList(split);
		System.out.println(stringList);
	}
打印结果:

 但是上面方法,如果遇到全角的空格符号,依然会出问题,解决办法如下:
使用正则表达式:split(“(\s|\u00A0)+”)
str.split("(\\s|\\u00A0)+");
打印如下:
 
最后
为了是代码更加健壮,这里更推荐使用 str.split(“(\s|\u00A0)+”) 进行空格的截取



















