java在括号中拆分字符串时的正则表达式

Nil*_*aha 1 java split

String喜欢

Move Selected Patients (38)
Run Code Online (Sandbox Code Playgroud)

我想38使用java split在括号之间检索.

试过这段代码:

String a1 = "Move Selected Patients (38)";
String[] myStringArray = new String[2];
myStringArray = a1.split("(", 2);
System.out.println(myStringArray[0]);
Run Code Online (Sandbox Code Playgroud)

并且它因此异常而失败:

java.util.regex.PatternSyntaxException: Unclosed group near index 1.
Run Code Online (Sandbox Code Playgroud)

任何人都可以帮助我.

Exp*_*lls 5

你需要逃避paren,因为split参数仍然是一个正则表达式:\\(.请记住,这仍将38)作为第二个元素返回.使用Matcher捕获组中括号的内容会更有意义:\\((.*?)\\)