C# 如何在string.Format()中转义双花括号
我已经看到了如何在C#C# 如何在string.Format()中转义双花括号,c#,string,escaping,C#,String,Escaping,我已经看到了如何在C#string.Format()中转义{或}字符 但我需要做的是格式化一个字符串,如下所示: {{tag}} string.Format("{{{0}}}", "tag"); 但是,当我试图像这样避开双花括号时: {{tag}} string.Format("{{{0}}}", "tag"); 或者这个: string.Format("{{{{{0}}}}}", "tag"); 输出总是这样的: {tag} 我发现工作的另一种方式是: StringBuilder
string.Format()中转义{
或}
字符
但我需要做的是格式化一个字符串,如下所示:
{{tag}}
string.Format("{{{0}}}", "tag");
但是,当我试图像这样避开双花括号时:
{{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对于第一个
{
- 第二个
{
- 在
{0}
您可以这样使用代码
string.Format("{0}{1}{2}", "{{","tag","}}");
您的第二个变体每边使用5个大括号对我很有用!string.Format(“{{{{{{{0}}}”,“tag”);
==>{{tag}
您的第二个示例string.Format({{{0}}”,“tag”)
工作得很好。对我来说也很好。似乎我第一次就纠正了,我不清楚我的问题是什么。重建解决方案似乎有帮助。谢谢大家