如有字符串"hello.world",用"."去切割这个字符串,得到的结果却是空数组:
groovy:000> b = "hello.world"
===> hello.world
groovy:000> b.split(".")
===> []
原因是split()是用正则去匹配切割字符串,.是正则的特殊符号,所以必须转义,用"\."去切割:
groovy:000> b.split("\\.")
===> [hello, world]
另外,还可以用tokenize()方法去切割:
groovy:000> b.tokenize('.')
===> [hello, world]
spli()方法和tokenize()方法的对比可见如下url中的介绍:
http://www.tothenew.com/blog/groovy-tokenize-vs-split/
截图加注释如下: