在String.Format()中转义单引号

Jef*_*ood 26 .net string.format escaping

我一直都在'管子里,我无法想出这个.可能很简单.

以下String.Format电话:

return dt.ToString("MMM d yy 'at' H:mmm");
Run Code Online (Sandbox Code Playgroud)

正确地返回这个:

2008年9月23日12:57

现在让我们说我想在年之前添加一个单引号,以返回:

08年9月23日12:57

由于单引号是保留的转义字符,如何转义单引号以使其显示?

我试过双,三和四单引号,没有运气.

Mar*_*age 36

你可以使用反斜杠来逃避它,你必须逃脱它.或

return dt.ToString(@"MMM d \'yy 'at' H:mmm");
Run Code Online (Sandbox Code Playgroud)

要么

return dt.ToString("MMM d \\'yy 'at' H:mmm");
Run Code Online (Sandbox Code Playgroud)

  • 天啊!这个接受的答案现在必须在我的简历上...; ^) (6认同)
  • 在我的辩护中,我被你必须做的方式迷住了{{{逃避'String.Format()中的曲线`并暂时失去理智......谢谢! (3认同)

Noo*_*ilk 5

如果用于 HTML,您可以只使用 HTML 实体。

- 编辑

'
Run Code Online (Sandbox Code Playgroud)

- 编辑

只是为了使这篇文章没有错误,正如其他人指出的那样,转义效果很好:)

string s = t.ToString("MMM d \\'yy 'at' H:mmm");
Run Code Online (Sandbox Code Playgroud)

这是我最后一次不根据发帖者来测试某些内容:)