如何在string.Format()中转义双花括号
本文关键字:转义 string Format | 更新日期: 2023-09-27 17:51:07
我已经从其他答案中看到,要在c# string.Format()
中转义{
或}
字符,您可以使用{{
或}}
。
但我需要做的是格式化字符串,看起来像这样:
{{tag}}
但是,当我尝试转义双花括号时,像这样:
string.Format("{{{0}}}", "tag");
或:
string.Format("{{{{{0}}}}}", "tag");
输出总是这样:
{tag}
我发现另一种有效的方法是:
StringBuilder output = new StringBuilder();
output.Append("{{");
output.Append("tag");
output.Append("}}");
但是,仅仅为了格式化字符串而必须拥有所有这些似乎很愚蠢。
我错过了什么明显的吗?
要做到这一点,你需要在表达式的两边各加5个大括号
Console.WriteLine("{{{{{0}}}}}", "tag");
分解为
- 第一个
{
2 - 2为第二个
{
- 1表示
{0}
中的第一个
{
您可以这样使用代码。
string.Format("{0}{1}{2}", "{{","tag","}}");