String str = "one(two)three{four}"
String[] arr = str.split("(\\()(\\{)(\\))(\\}))";
输出应该是:
arr = {"one","two","three","four"};
答案 0 :(得分:2)
正则表达式不会编译。
( \( ) # (1)
( \{ ) # (2)
( \) ) # (3)
( \} ) # (4)
= ) <-- Unbalanced ')'
您可能意味着要分开[(){}]+
答案 1 :(得分:-1)
你应该逃避反斜杠和添加或:
String str = "one(two)three{four}";
String[] arr = str.split("\\(|\\)|\\{|\\}");
或者您可以使用方括号列表:
String str = "one(two)three{four}";
String[] arr = str.split("[(){}]");
两个选项都可以使用
答案 2 :(得分:-1)