Как удалить первый и последний специальный символ строки на языке groovy - PullRequest
0 голосов
/ 18 марта 2020
String s ="[ABC_JJBB_DD]";

Я получаю строковое значение из данных приложения, как я могу удалить специальный символ [и] в строке в groovy. Использование

s.removeAll('[','']

Ответы [ 2 ]

1 голос
/ 18 марта 2020

Начиная с Groovy 3, вы можете использовать takeBetween, который имеет помимо других аргументов один для начальной и конечной строки. Например,

groovy:000> "[ABC_JJBB_DD]".takeBetween("[","]")
===> ABC_JJBB_DD
0 голосов
/ 18 марта 2020

Вы можете сделать это по маршруту java, как говорит Аникет:

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

Или вы можете выбрать маршрут Groovy:

s[1..-2]

Но вы бы необходимо убедиться, что s длиннее, чем 1 символ, с обоими из них, иначе вы получите StringIndexOutOfBoundsException

Если вы не хотите проверять, вы можете делать esoteri c вещи как

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

, который будет работать, но будет медленнее

Или, если вы просто хотите удалить все [ и ], вы можете сделать

s.replaceAll(~/[\[\]]/, '')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...