除前导空格外,删除所有空格

时间:2020-10-29 12:03:06

标签: java string trim

我需要从String开头的空格中删除所有空格。

我有一些看起来像这样的字符串:

"              h        ello"

我正在努力实现这一目标:

"              hello"

这就像倒退trim()

最有效的解决方法是什么?

1 个答案:

答案 0 :(得分:2)

您可以使用带有此正则表达式(?<=\S)(\s+)(?=\S)的replaceAll:

str = str.replaceAll("(?<=\\S)(\\s+)(?=\\S)", "");

输入和输出示例:

"              h   ello  "        => "              hello  "
"              hello,  word  "    => "              hello,word  "

第一个正则表达式仅保留前导和尾随空格,如果要仅保留前导空格,则可以使用此正则表达式(?<=\S)(\s+)

输入和输出示例:

"              hello  "         => "              hello"
"              hello,  word  "  => "              hello,word"