取代"伦敦\\ /印度\\ / chaina \\ /" to" London_India_chaina _"

时间:2015-08-17 13:31:35

标签: scala

我有一个字符串val str = "London\\/India\\/chaina\\/"想要替换为"London_India_chaina_"

如果我在做

str.replaceAll("\\\/","_")

获取"London\_India\_chaina\_"

4 个答案:

答案 0 :(得分:1)

Scala String本质上是java String对象。

scala> val str = "London/India/chaina/"
str: String = London/India/chaina/

scala> str.replace("/", "_")
res0: String = London_India_chaina_

答案 1 :(得分:0)

\的第一个参数中缺少一个replaceAll字符:

  object Replace {
      def main(args : Array[String]) = {
        var str = "London\\/India\\/chaina\\/"
        println(str)
        println(str.replaceAll("\\\\/","_"))
      } 
    }

输出:

London\/India\/chaina\/
London_India_chaina_

答案 2 :(得分:0)

对字符串作为字符序列进行操作

str map {
  case '/' => '_'
  case c => c
}

第二种情况与任何其他与'/'不同的字符匹配。

答案 3 :(得分:0)

尝试一下:

val str = "London\\/India\\/chaina\\/"
str.replaceAll("""\\\\/""","_")