日期:2014-05-18  浏览次数:20505 次

DDN String.Format 中能转义 { & } 吗?接分啊,兄弟们^_^
Morning,

一早写了   N   多的   String.Format   忽然想起了这个历史遗留的问题

如题所述,假如  

System.String.Format(string   format,   object   arg)   中  
参数   format   本身也包含   {   或者   }   怎么办?

有没有转义符支持?

例如,常见的js脚本,

//   how   to   escape   the   {   &   }   ?
string   script   =   String.Format(@ "window.onload   =   function()   {   alert( " "{0} " ");   } ",   "Hello   world! ");   //   ->   System.FormatException:   输入字符串的格式不正确。

any   tips?

thx   in   advance.

------解决方案--------------------
没研究过,关注
------解决方案--------------------
关注
------解决方案--------------------
没注意过这个问题,mark,顺便接分,^_^
------解决方案--------------------
用两个{ 可以输出

string str = string.Format( "he is {0} and {{或者}} ", "ustbwuyi ");
Response.Write(str);
------解决方案--------------------
用{{和}}转义

很多地方都是用这种方式进行转义的

比如前面加了@的字符串里, "是用 " "来转义的
正则表达式Replace的时候,用$$对$进行转义

比较特殊的转义方法,只见过DateTime的ToString方法里,是用 ' '包含 ",也就是 ' " '这种方式对 "进行转义的
------解决方案--------------------
楼上的朋友:

string script = String.Format(@ "{{0}} ", "Hello world! ");

这样能够实现?

if(script == "Hello world! ")
你对
else
这样转也没用啊

或者如何实现楼主想要实现的?
------解决方案--------------------
mark
------解决方案--------------------
luomingchao

完全不知道这位同志在这里自言自语什么……
------解决方案--------------------
JF
------解决方案--------------------
学习,jf
------解决方案--------------------
up
------解决方案--------------------
学习学习。。
顺便接分。。
谢谢
------解决方案--------------------
路过 顺便接分。。

------解决方案--------------------
我承认我只知道用\