Groovy/Java 拆分字符串放在括号 “(” 上

2022-09-01 11:12:33

我正在尝试执行类似于以下内容的拆分:

println "Hello World(1)".split("W");

输出:

[Hello , orld(1)]

我想执行此拆分:

println "Hello World(1)".split("(");

但我看到:

Caught: java.util.regex.PatternSyntaxException: Unclosed group near index 1 (

有没有办法摆脱这个括号?任何帮助是值得赞赏的。


答案 1
println "Hello World(1)".split("\\(");

答案 2

该方法采用正则表达式模式。split

如果你想在“只是一个常规字符串”上拆分,你可以先用引号引用字符串:Pattern.quote

println "Hello World(1)".split(Pattern.quote("("))