C#6には、補間された文字列という新しい機能があります。
これらを使用すると、インデックスに依存するのではなく、式をコードに直接配置できます。
string s = string.Format("Adding \"{0}\" and {1} to foobar.", x, this.Y());
になる:
string s = $"Adding \"{x}\" and {this.Y()} to foobar.";
ただし、次のような逐語的文字列(主にSQLステートメント)を使用して、複数の行にまたがる多くの文字列があります。
string s = string.Format(@"Result...
Adding ""{0}"" and {1} to foobar:
{2}", x, this.Y(), x.GetLog());
これらを通常の文字列に戻すのは面倒です:
string s = "Result...\r\n" +
$"Adding \"{x}\" and {this.Y()} to foobar:\r\n" +
x.GetLog().ToString();
逐語的文字列と補間文字列の両方を一緒に使用するにはどうすればよいですか?
$
と@
接頭辞の両方を同じ文字列に適用できます。
string s = $@"Result...
Adding ""{x}"" and {this.Y()} to foobar:
{x.GetLog()}";
C#6で導入されて以来、補間された逐語的文字列はトークン$@
で開始する必要がありましたが、C#8で開始すると、$@
またはのいずれかを使用できます@$
。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加