変数に対してString Interpolationを適用する
皆さんお馴染みのString Interpolationですが、すでにある変数に対してString Interpolationを適用したいと思ったのでメモします。
String Interpolation自体は、以下のように、文字列にあとから変数を挿入する機能です。
scala> val x = "interpolation"
scala> println(s"string #{x}")
string interpolation
詳しくはこちら。 http://docs.scala-lang.org/ja/overviews/core/string-interpolation.html## 何がしたいの?
すでにあるstring interpolationを含んだ文字列に、あとからString Interpolationを適用したいということです。何を言っているかわからないと思いますが、概念的にはこういうことです。
```scala> val a = "string ${x}"
scala> val x = "interpolation"
scala> println(s(a))
string interpolation
試しに入れ子にしてみます。
scala> println(s"${a}")
string ${x}
```
ダメですよね。すみません。
無理みたいです
http://stackoverflow.com/questions/13260864/string-interpolation-in-scala-2-10-how-to-interpolate-a-string-variable
「コンパイル時に情報が不足してしまうから」とのことで、納得。
http://kmizu.hatenablog.com/entry/20120505/1336216839
comments powered by Disqus