Java的。如何在每个第n个空格中拆分包含多个空格的字符串?

时间:2013-12-06 16:50:54

标签: java string

这是一个我打算拆分成数组的示例字符串:

Hello My Name Is The Mighty Llama

输出应为:

Hello My
Name Is
The Mighty
Llama

以下分割在每个空间上,我如何在每个其他空间上分开?

String[] stringArray = string.split("\\s");

2 个答案:

答案 0 :(得分:7)

你可以这样做:

String[] stringArray = string.split("(?<!\\G\\S+)\\s");

答案 1 :(得分:2)

虽然可以使用拆分来解决它this one,但强烈建议您使用PatternMatcher类更具可读性。这是解决它的一个例子:

String string="Hello My Name Is The Mighty Llama";
Pattern p = Pattern.compile("\\S+(\\s\\S+)?");
Matcher m = p.matcher(string);
while (m.find())
    System.out.println(m.group());

输出:

Hello My
Name Is
The Mighty
Llama