0

私はこの文字列を変えたい:

"1:a|2:b|3:c"

これに:

Map(1 -> "a", 2 -> "b", 3 -> "c")

私は機能する手続き型の方法を持っていますが、より機能的なアプローチが必要なようです。

4

2 に答える 2

6
val a = [YOUR STRING]
a.split('|').map(_.split(':')).map(a => (a(0) -> a(1))).toMap
于 2013-09-27T18:07:22.730 に答える
1
val s = "1:a|2:b|3:c"

"(\\d+)\\:(\\w+)".r.findAllMatchIn(s).map( m => (m.group(1).toInt -> m.group(2)) ).toMap
于 2013-09-27T18:26:58.300 に答える