如何将分隔的管道转换为使用转义分隔的逗号

时间:2010-04-19 22:27:45

标签: scala csv replace

我对scala相当新,我需要将一个以管道分隔的字符串转换为逗号分隔的字符串,其值用引号括起来,任何引号都用“\”转义

在c#中我可能会这样做

string st = "\"" + oldStr.Replace("\"", "\\\\\"").Replace("|", "\",\"") + "\""

我没有确认实际上有效,但这是我想要做的背后的基本想法。有没有办法在scala中轻松完成这项工作?

1 个答案:

答案 0 :(得分:5)

类似地:

val st = "\"" + oldStr.replaceAll("\"", "\\\\\"").replaceAll("\\|", "\",\"") + "\""

也可以是:

val st = oldStr.replaceAll("\"","\\\\\"").split("\\|").mkString("\"","\",\"","\"")