Scala - 删除空格

Mai*_*ein 2 scala

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

svchost.exe                   4464 Services                   0        47.656 K
Run Code Online (Sandbox Code Playgroud)

请注意,有很多空格,每种情况下的空格量都不同

我想提取名称svchost.exe和pid 4464.我能够做到这一点,但只能采取必要的方式.我很难以功能性的方式来解决这个问题.

用正则表达式解决这个问题是可能的,但我想看看你是如何用函数式编程做这样的事情的.

Tom*_*icz 10

利用String.split()接受正则表达式的事实:

s.split(" +")  //Array(svchost.exe, 4464, Services, 0, 47.656, K)
Run Code Online (Sandbox Code Playgroud)

无需后期过滤.


om-*_*nom 5

十分简单:

val s = "svchost.exe                   4464 Services                   0        47.656 K"
s.split(" ").filterNot(str => str == "")
// Array[java.lang.String] = Array(svchost.exe, 4464, Services, 0, 47.656, K)
Run Code Online (Sandbox Code Playgroud)

UPDATE

s.split(" +")依赖于regexp美的用途