Как связать данные в heredoc от scala? - PullRequest
3 голосов
/ 26 июля 2010
val name = "mike"
val str = """Hi, {name}!"""
println(str)

Я хочу вывести str как Hi, mike!, но не удалосьКак это сделать?

Ответы [ 3 ]

5 голосов
/ 27 июля 2010

Полное хакерское решение - использовать XML-интерполяцию Scala:

val name = "Mike"
val str = <a>Hi, {name}!</a> text

Метод text возвращает строковое содержимое конструкции XML, поэтому наши теги удаляются.

5 голосов
/ 26 июля 2010

Scala не поддерживает интерполяцию строк.Существует плагин компилятора, который реализует его на http://github.com/jrudolph/scala-enhanced-strings.

Без плагина вы можете использовать конкатенацию или форматирование строк:

val str = name formatted "Hi, %s!"

или, конечно,

val str = "Hi, %s!".format(name)
4 голосов
/ 26 мая 2014

Начиная с scala> = 2.10 поддерживается интерполяция строк:

val str = "Foo Bar"
str: String = Foo Bar

scala> s"Interpolating: $str"
res0: String = Interpolating: Foo Bar
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...