java分裂字符串

Saf*_*ari 3 java regex string split tokenize

在Java中,如果我有一个这种格式的字符串:

( string1 , string2 ) ( string2 ) ( string4 , string5 , string6 ) [s2]
Run Code Online (Sandbox Code Playgroud)

如何拆分字符串以获取字符串数组?

string1 , string2
string2
string4 , string5 , string6
Run Code Online (Sandbox Code Playgroud)

Fra*_*ulo 6

试试这个:

    String test = "( string1 , string2 ) ( string2 ) ( string4 , string5 , string6 ) [s2]";

    String[] splits = test.split("\\(\\s*|\\)[^\\(]*\\(?\\s*");

    for (String split : splits) {
        System.out.println(split);
    }
Run Code Online (Sandbox Code Playgroud)