Groovy: удаление определенных символов из конца строки

#groovy

#groovy

Вопрос:

У меня есть строка, которая может заканчиваться несколькими n (двумя символами, а не новой строкой).

Как я могу удалить это из конца строки?

Например: abcndefnn должно стать abcndef

Спасибо

Ответ №1:

Для такой простой задачи trim() было бы достаточно простого:

 assert 'abcndef' == 'abcndefnnnn'.trim()
 

Комментарии:

1. Как я уже сказал, это два символа, а не символ новой строки, так что скорее \n , когда вы помещаете его в строку.

Ответ №2:

Вы можете сделать это следующим образом:

 s = "abcndefnn"
assert s.replaceAll(/n*$/, "") == "abcndef"
 

Раздел между // поисками любого количества n и $ представляет конец строки. Итак, замените любое количество новых строк ничем другим после них, пустой строкой.