如何使用带有空格的给定数字来拆分字符串?

时间:2017-10-05 16:31:47

标签: java string split

我有一个像下面这样的字符串,

String str = "12 67 239 2 47 29";

在这里,我想使用" 2 "

拆分上面的字符串
System.out.println(StringUtils.split(str, " 2 ")[0]);

我得到了一个结果1

但我希望得到如下结果,

12 67 239 2 

我怎么能这样做呢,请帮助我。

1 个答案:

答案 0 :(得分:1)

使用以下正则表达式将字符串拆分为2旁边的一个或多个空格。

str.split("(?<=\\s2)\\s+")[0]
  • (?<=\\s2)正面看后面,看起来就在<space>2

  • 旁边
  • \\s+匹配一个或多个空格。

  • 由于拆分仅在匹配的字符上发生,因此上述字符串应使用2旁边的空格作为分隔符进行拆分。

删除2旁边存在的所有字符。

System.out.println(str.replaceFirst("(\\s2)\\s+.*", "\\1"));