Удалите пробелы в строке с помощью Scala

Я хочу удалить пробелы в строке.

Input: "le ngoc ky quang"  
Output: "lengockyquang"

Я попробовал методы replace и replaceAll, но это не сработало.

Ответ 1

Попробуйте следующее:

input.replaceAll("\\s", "")

Ответ 2

Вы можете отфильтровать все пробельные символы.

"With spaces".filterNot((x: Char) => x.isWhitespace)

Ответ 3

val str = "le ngoc ky quang"
str.replace(" ", "")

//////////////////////////////////////
scala> val str = "le ngoc ky quang"
str: String = le ngoc ky quang

scala> str.replace(" ", "")
res0: String = lengockyquang

scala> 

Ответ 4

Попробуйте разделить строку на любое количество пробельных символов (\\s+), а затем повторно объединить разделенный массив,

str.split("\\s+").mkString

Ответ 5

Очевидно, что

scala> import PartialFunction.{cond => when}
import PartialFunction.{cond=>when}

scala> "le ngoc ky quang".filterNot(when(_) { case ' ' => true })
res0: String = lengockyquang

scala> val r = """\p{Space}+""".r
r: scala.util.matching.Regex = \p{Space}+

scala> "le ngoc ky quang".filterNot(when(_) { case r() => true })
res1: String = lengockyquang

Ответ 6

Согласно alvinalexander он показывает, как заменить более одного пробела на один пробел. Вы можете применить ту же логику, но вместо одного пробела вы должны заменить ее на пустую строку.

input.replaceAll(" +", "")