当字符串包含';{}';字符

本文关键字:字符 字符串 包含 | 更新日期: 2023-09-27 18:25:04

我正在尝试在C#中执行字符串插值。我试图组合的输入字符串包含许多"{}"字符(因为它的javascript),这似乎会导致错误。

为什么我不能在C#中对这些字符串执行字符串插值?

string test = string.Format("{img: '"{0}'", html: '"{1}'"}", "images/a.png", "<div></div>");
// so the output should be
// "{img: '"images/a.png'", html: '"<div></div>'"}"

我得到的错误是:

输入字符串的格式不正确。

你能告诉我如何实现字符串插值吗

当字符串包含';{}';字符

支架需要转义:

string test = string.Format("{{img: '"{0}'", html: '"{1}'"}}", "images/a.png", "<div></div>");

括号对string.Format有特殊意义,因此需要转义它们。

请参阅:http://msdn.microsoft.com/en-us/library/txafckwd.aspx

没有简单的方法可以做你想做的事,但文档页面建议了一些变通方法。