拆分一个字符串并获取每个段的起始索引

Joe*_*man 4 indexing split scala

我试图拆分一个字符串,并获取我得到的每个“单词”的所有起始索引。

例如,这样的字符串:

"Rabbit jumped over a fence and this Rabbit loves carrots"
Run Code Online (Sandbox Code Playgroud)

如何将其拆分以获取每个单词的索引?:

0,7,14,19,21,27,31,36,43,49
Run Code Online (Sandbox Code Playgroud)

Man*_*akd 5

你可以这样

val str="Rabbit jumped over a fence and this Rabbit loves carrots"
val indexArr=str.split(" ").scanLeft(0)((prev,next)=>prev+next.length+1).dropRight(1)
Run Code Online (Sandbox Code Playgroud)

样本输出:

ndexArr: Array[Int] = Array(0, 7, 14, 19, 21, 27, 31, 36, 43, 49)
Run Code Online (Sandbox Code Playgroud)