如何修剪字符串的结尾空白?

时间:2011-07-17 14:38:21

标签: scala trim

在java中,我可以使用commons-lang

来完成
StringUtils.stripEnd("  abc  \t", null) // => "  abc"

我想知道是否有任何内置方法在scala中执行此操作,或者如何在没有任何第三方依赖项的scala中执行此操作?

3 个答案:

答案 0 :(得分:8)

您可以使用正则表达式执行此操作:

"  string  ".replaceAll("\\s+$", "");
res0: java.lang.String = "  string"

答案 1 :(得分:5)

另一种可能的方法是使用名为dropWhile的丰富String类的方法StringOps

scala> val y = "   abcd   ".reverse.dropWhile(_ == ' ').reverse
y: String = "   abcd"

如果您需要从字符串的开头修剪空格,只需删除reverse方法:

scala> val y = "   abcd   ".dropWhile(_ == ' ')
y: String = "abcd   "

答案 2 :(得分:2)

没有外部依赖,只有结束修剪:

scala> val s = "   test   \t"
s: java.lang.String = "   test      "

scala> val Regex = """^(.*?)\s*$""".r
Regex: scala.util.matching.Regex = ^(.*?)\s*$

scala> val Regex(trimmed) = s
trimmed: String = "   test"