如何在groovy语言中删除字符串的第一个和最后一个特殊字符


String s ="[ABC_JJBB_DD]";

我正在从应用程序数据中获取字符串值,如何在groovy中删除字符串中的特殊字符[和]。使用

s.removeAll('[','']

正如Aniket所说,您可以使用java路由:

s.substring(1, s.length()-1)

或者您可以采用Groovy路线:

s[1..-2]

但您需要确保s比1个字符长,同时使用这两个字符,否则您将获得StringIndexOutOfBoundsException

如果你不想检查,你可以做一些深奥的事情,比如

s.drop(1).reverse().drop(1).reverse()

这会起作用,但会更慢

或者,如果你只想删除所有的[],你可以做

s.replaceAll(~/[[]]/, '')

由于Groovy3,您可以使用takeBetween,它除了其他参数外,还有一个用于开始和结束字符串。例如

groovy:000> "[ABC_JJBB_DD]".takeBetween("[","]")
===> ABC_JJBB_DD

相关内容

最新更新