如何拆分保留空元素的字符串?

时间:2015-05-08 13:58:32

标签: java split

分割"TEST/TEST/".split("/")时,我会得到length = 2的字符串数组。

如何将length = 3与元素["TEST", "TEST", ""]分开,因此最后一个元素为空字符串?

(我希望用本机Java实现这一点,并且考虑到性能,因为拆分必须一个接一个地在几百万行上进行)。

1 个答案:

答案 0 :(得分:3)

您可以使用split重载参数化所需数组元素的数量:

String input = "TEST/TEST/";
System.out.println(Arrays.toString(input.split("/", 3)));
// or: input.split("/", -1)

<强>输出

[TEST, TEST, ]

备注

  • 无需转义正斜杠
  • &#34;表现&#34;除非您提供更多详细信息,否则您的部分问题有点难以回答
  • 您可能希望多线程化您的程序。在Java 7中,您可以使用fork/join框架
  • 正如Pshemo指出的那样,您可以使用否定int来应用模式......
  

尽可能多次,数组可以有任何长度。

(来自API)。