c# - with - 如何在.NET中格式化字符串中使用花括號(大括號)




string.format c# (6)

如何使用string.Format方括號被轉義。 例如:

String val = "1,2,3"
String.Format(" foo {{0}}", val); 

此示例不會引發異常,但會輸出字符串foo {0}

有沒有辦法擺脫括號?



只需複制大括號即可。

{=> {{

} =>}}


您可以使用雙開雙括號和雙關閉括號,它們只會在頁面上顯示一個括號。


或者你可以像這樣使用c#字符串插值(C#6.0中提供的功能)

var value = "1, 2, 3";
var output = $" foo {{{value}}}";

為了輸出foo {1, 2, 3}你必須這樣做:

string t = "1, 2, 3";
string v = String.Format(" foo {{{0}}}", t);

要輸出一個{你使用{{並輸出}你使用}}


轉義大括號和使用字符串插值使得一個有趣的挑戰。 您需要使用四重括號來轉義字符串插值解析和string.format解析。

Escaping Brackets:字符串插值$(“”)和String.Format

string localVar = "dynamic";
string templateString = [email protected]"<h2>{0}</h2><div>this is my {localVar} template using a {{{{custom tag}}}}</div>";
string result = string.Format(templateString, "String Interpolation");

// OUTPUT: <h2>String Interpolation</h2><div>this is my dynamic template using a {custom tag}</div>




formatting