Java正则表达式拆分String

时间:2014-08-30 01:58:40

标签: java regex string

如何在一个或多个空格之间拆分字符串,保留多个空格的效果。

e.g。当输入字符串是:

s = "a bc de fg "; 
spl = s.split(" ");

给我数组

{a, bc, de, fg}.

如何将相同的数组放到中间的1个或多个空格中,如

s = "a  bc  de     fg ";

TIA。

2 个答案:

答案 0 :(得分:3)

您可以使用+ quantifier含义"一个或多个"。

String s = "a  bc  de     fg ";
String[] parts = s.split(" +");
System.out.println(Arrays.toString(parts)); // [a, bc, de, fg]

您也可以考虑使用匹配任何空格字符的\s

String[] parts = s.split("\\s+");

答案 1 :(得分:2)

使用以下正则表达式分割字符串,

String tok[] = s.split(" +");
System.out.println(Arrays.toString(tok));

<space>+匹配一个或多个空格。