Escapar de um cifrão na interpolação de cadeias


119

Como escapar de um cifrão na interpolação de string?

def getCompanion(name: String) = Class.forName(s"my.package.$name\$")

// --> "error: unclosed string literal"

Respostas:


178

Apenas o dobro

scala> val name = "foo"
name: String = foo

scala> s"my.package.$name$$"
res0: String = my.package.foo$

4
Gostaria de ver um link para alguma documentação sobre este. Pode haver outros casos do que o exato aqui, e a resposta poderia, então, ajudar mais pessoas
Martin Hallén

Não consigo encontrar nada sobre isso na documentação. Há um PR para adicioná-lo embora: github.com/scala/docs.scala-lang/pull/1531
amoebe

1
A documentação agora está aqui: docs.scala-lang.org/overviews/core/… Não tem certeza de que outros casos existem?
Amebe 7/10/19
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.