TrimEnd для Java?

В процессе преобразования приложения C# к Java я столкнулся с использованием Строки TrimEnd метод. Существует ли эквивалентная реализация Java? Я, может казаться, не нахожу тот.

Я не заменил бы его trim, так как я не хочу изменять значение или операцию программы в этой точке, если я не имею к.

16
задан Servy 22 May 2018 в 14:47
поделиться

3 ответа

Прямого эквивалента нет, однако, если вы хотите удалить трейлинговые пробелы, вы можете использовать:

"string".replaceAll("\\s+$", "");

\s - это набор символов регулярных выражений "пробелы", если вас волнует только удаление трейлинговых пробелов, вы можете заменить его символом пробела. Если вы хотите использовать более общую форму trimEnd(), то есть удалить произвольный набор символов трейлинга, то вам нужно его немного изменить, чтобы использовать:

"string".replaceAll("[" + characters + "]+$", "");

Помните, что первый аргумент - это общий регекс, и поэтому если один из ваших символов - это ], то это должен быть первый символ в вашем списке. Для полного описания шаблонов ява-регекса посмотрите на javadoc.

Если вам когда-нибудь понадобится реализовать метод trimstart() из .net, то он почти такой же, но будет выглядеть следующим образом:

"string".replaceAll("^[" + characters + "]+", "");
30
ответ дан 30 November 2019 в 15:38
поделиться

Прямой замены нет. Вы можете использовать регеxps, или, возможно, метод Commons Lang StringUtils.stripEnd() .

11
ответ дан 30 November 2019 в 15:38
поделиться

Вот трюк, чтобы сделать это из: http://www.overclock.net/coding-programming/320937-simple-java-trim-help.html

str = str.replaceAll(" +$", "");
2
ответ дан 30 November 2019 в 15:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: