在java中,我可以使用commons-lang
:
StringUtils.stripEnd(" abc \t", null) // => " abc"
我想知道是否有任何内置方法在scala中执行此操作,或者如何在没有任何第三方依赖项的scala中执行此操作?
答案 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"