Grails: 分割包含管道符的字符串

18 浏览
0 Comments

Grails: 分割包含管道符的字符串

我试图分割一个字符串。简单的例子是可行的:

groovy:000> print "abc,def".split(",");
[abc, def]===> null
groovy:000>

但是,我需要使用管道符号进行分割,但是我没有得到期望的结果:

groovy:000> print "abc|def".split("|");
[, a, b, c, |, d, e, f]===> null
groovy:000>

所以我的第一个选择当然是将管道符号(|)切换为逗号(,)作为分隔符。

但是现在我很好奇:为什么这样不起作用?转义管道符号(\|)似乎没有帮助:

groovy:000> print "abc|def".split("\|");
ERROR org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed, groovysh_parse: 1: unexpected char: '\' @ line 1, column 24.
   print "abcdef".split("\|");
                          ^
1 error
|
        at java_lang_Runnable$run.call (Unknown Source)
groovy:000>

0