ゆるっと Advent Calender 2020 の初日に参加させていただきましたー。
よろしくお願いします。
初日にふさわしいかわかりませんが、ゆるゆる仕事してたら恥をかいた件を書きますね。
先日先輩にレビューしてもらったとき、文字列の中に変数を足しこむやり方を、+演算子を使ってやっていたら先輩に『ダサい』と一蹴されました。(*'▽')ガフッ
const word = "hogehoge";
const text = "彼はおもむろにこう言った。\n『 " + word + " 』、と。";
console.log(text);
彼はおもむろにこう言った。
『 hogehoge 』、と。
勉強不足でごめんなさい。( ;∀;)
あと、ユニク〇ばかり着ててごめんなさい。
反省したので自分の学んだことのある言語での書き方や名称をまとめたい思います。
Javascript, Node.js, GoogleAppsScript
Javascript および Node.js および GoogleAppsScript ではテンプレートリテラルという名称になっています。
文字列をグレイヴ・アクセント(`)で囲み、変数を入れるときはドル記号と波括弧でくくります。
const word = "hogehoge";
const text = `彼はおもむろにこう言った。\n『 ${word} 』、と。`;
console.log(text);
彼はおもむろにこう言った。
『 hogehoge 』、と。
Python
Python ではフォーマット済み文字列リテラルという名称になっています。
f
または F
を先頭に書いてから文字列を書いていきます。
変数を入れるときは波括弧で区切ります。
word = "hogehoge";
text = f"彼はおもむろにこう言った。\n『 {word} 』、と。";
print(text);
彼はおもむろにこう言った。
『 hogehoge 』、と。
Java
ない。
強いて言うなら String.format()
を使うとできる。
String word = "hogehoge";
String text = "彼はおもむろにこう言った。\n『 %s 』、と。";
String output = String.format(text, word);
System.out.println(output);
彼はおもむろにこう言った。
『 hogehoge 』、と。
C♯
C# では文字列補間という名称になっています。
$
を先頭に書いてから文字列を書いていきます。
変数を入れるときは波括弧で区切ります。
string word = "hogehoge";
string text = $"彼はおもむろにこう言った。\n『 {word} 』、と。";
System.Console.WriteLine(text);
彼はおもむろにこう言った。
『 hogehoge 』、と。
おわりに
Java にはなかったもんなー( ゚Д゚)
知らなかったの私だけかもしれませんが、実践に勝る経験はありませんね。
この記事が誰かの助けになれば幸いです。|д゚)
自身のメモ用でもあるので、新しい言語を使うときには更新していきますー。
ではまた!(^^)/
参考にさせていただきましたm(_ _)m
MDN - テンプレートリテラル
Python documentation - フォーマット済み文字列リテラル
.NET documentation - 文字列補間