Scala字符串到数组双引号元素

时间:2017-10-16 07:29:34

标签: string scala split double-quotes

在Scala中,如何将逗号分隔的字符串转换为带双引号元素的数组?

我试过如下:

var string = "welcome,to,my,world"
var array = string.split(',').mkString("\"", "\",\"", "\"")
Output:
[ "\"welcome\",\"to\",\"my\",\"world\""]

我的要求是数组显示为:

["welcome","to","my","world"]

我也尝试使用以下方法:

var array = string.split(",").mkString(""""""", """","""", """"""")
Output:["\"ENV1\",\"ENV2\",\"ENV3\",\"ENV5\",\"Prod\""]

2 个答案:

答案 0 :(得分:2)

mkString使字符串不按顺序排列。如果你需要一个数组,你只需要映射元素来添加引号。

val str = "welcome,to,my,world"

val arr = 
    str
    .split( ',' )
    .map( "\"" + _ + "\"" )

arr.foreach( println )

输出

"welcome"
"to"
"my"
"world"

答案 1 :(得分:0)

您的问题有点不清楚,因为您的示例结果不包含双引号。这会产生一个看起来像你的要求的字符串,但不确定你是否正在寻找它?

var string = "welcome,to,my,world"
string.split(',').mkString("[\"","\",\"","\"]")`

res9: String = ["welcome","to","my","world"]`