java提取元素以逗号分隔的元素

时间:2018-05-28 16:10:49

标签: java regex string split

我有一个这样的字符串:

String input= 'hello',2,[5,6],'city'.

所以字符串由不同类型的元素组成。

我“只是”需要提取用逗号分隔的元素。但是我找不到 避免将逗号考虑到元素[5,6]中的方法。 我尝试使用split()方法并考虑许多不同的正则表达式 达到我的目标,但没有成功。

1 个答案:

答案 0 :(得分:2)

,(?![^\[]*[]])适用于这项工作。

class Test {
    public static void main(String[] args){

        String test = "'hello',2,[5,6],'city'";
        String[] output = test.split(",(?![^\\[]*[]])");

        for (String s : output)
            System.out.println(s);

    }
}

输出:

'hello'
2
[5,6]
'city'