Java String.split(“\\ s +”)

时间:2012-11-23 17:43:24

标签: java string token

我正在尝试解析一些输出。输出如下:

raidz1-0 ONLINE 0 0 0

我的代码如下:

String line = "\traidz1-0  ONLINE       0     0     0";
String[] tokens = line.split("\\s+");

令牌最终为{"raidz1-0", "ONLINE", "0"}

由于某种原因,最后2个零被丢弃。我想保留零,请告诉我如何。

2 个答案:

答案 0 :(得分:3)

此代码:

String line = "\traidz1-0  ONLINE       0     0     0";
String[] tokens = line.split("\\s+");
System.out.println(tokens.length);
System.out.println(Arrays.toString(tokens));

打印:

    6
    [, raidz1-0, ONLINE, 0, 0, 0]

答案 1 :(得分:1)

嗯,它在我的情况下工作正常,它应该工作: -

String line = "\traidz1-0  ONLINE       0     0     0";
String[] tokens = line.split("\\s+");

System.out.println(Arrays.toString(tokens));

输出: -

[, raidz1-0, ONLINE, 0, 0, 0]

你确定,你没有得到最后两个零?