该trim()
函数会删除尾部和前导空格,但是,如果我只想删除字符串的尾部空格,该怎么办?
如果您使用的是JDK
11或更高版本,则可能应该使用stripTrailing()。
使用正则表达式\s++$
,您可以将所有尾随空格字符(包括空格和制表符)替换为空字符串(""
)。
final String text = " foo ";
System.out.println(text.replaceFirst("\\s++$", ""));
输出量
foo
在线演示。
这是正则表达式的细分:
\s
–任何空白字符,++
–匹配一个或多个先前的令牌(可能);即,匹配一个或多个空格字符。所述+
图案在其使用所有格形式 ++
,这需要更少的时间来检测的情况下,当模式不匹配。$
–字符串的末尾。因此,正则表达式将匹配尽可能多的空格,紧随其后的是字符串的结尾:换句话说,是尾随空格。
如果您以后需要扩展需求,则对学习正则表达式的投资将变得更加有价值。
参考文献
问题内容: 是否有一种方便的方法来从Java字符串中剥离任何前导或尾随空格? 就像是: 结果: 将替换keep和this之间的空间。 问题答案: 你可以尝试trim()方法。
问题内容: 我很难尝试将.strip与以下代码行结合使用。 谢谢您的帮助。 问题答案: 您可以使用strip()删除尾随和前导空格。 注意:内部空间被保留
问题内容: 在Java中寻找快速,简单的方法来更改此字符串 看起来像这样 在这里,我用一个空格替换了所有多个空格,但我也希望字符串开头的一个或多个空格消失。 这样的事情使我部分地在那里 但不完全是 问题答案: 尝试这个: 也可以看看 - - 返回字符串的副本,省略前导和尾随空格。 - 重复 没有trim()正则表达式 也可以只用一个执行此操作,但这比解决方案的可读性差得多。尽管如此,这里提供它只是
问题内容: 我有一个包含两个字段(国家和ISO代码)的表: 在某些行中,第二个字段在开头和/或结尾处都有空格,这会影响查询。 有没有一种方法(在SQL中)遍历表并查找/替换field2中的空格? 问题答案: 您正在寻找TRIM。
问题内容: 我需要在字符串中的单词之后删除空格。可以用一行代码完成吗? 例: 问题答案: 更多关于在文档
我试图从字符串中删除所有尾随空格和句点,以便如果我使用以下示例之一: 或者 他们最终会成为: 我知道diddy luck是关于的,但我在这里找到了一个删除尾部空白的函数: 我尝试修改以包含句点,但它仍然只删除尾随的空白字符: 谁能告诉我这是怎么做到的,也许能解释一下我用的正则表达式?