如何从数组中删除空字符串

时间:2013-11-15 09:41:27

标签: java regex arrays string

我的输入字符串是

String s = ",1,,2, ,3,4,5,,6";
String[] array = s.split(",");
System.out.println(Arrays.toString(array));

现在我得到了这个输出

[, 1, , 2,  , 3, 4, 5, , 6]

但预期的输出是

[1, 2, 3, 4, 5, 6]

3 个答案:

答案 0 :(得分:4)

使用此增强型正则表达式来避免空匹配:

s.replaceFirst("^( *, *)+", "").split("(, *)+");
//=> [1, 2, 3, 4, 5, 6]

答案 1 :(得分:2)

试试这个

s.replaceAll("^[, ]+", "").split("[, ]+");

答案 2 :(得分:1)

我分开了任务。首先,你需要在开头或结尾修剪任何逗号。

之后,您可以使用\s*,[,\s]*

拆分字符串