.net - On C# escape curly braces and a backslash after -
i trying format text can provide template rft text.
my string declared stringformater as:
var fulltitlestring = string.format( cultureinfo.currentculture, "{{\\test", title, filtername); but keep obtaining string "{\test". using single backslash results on errors @ not understand \t escaped character.
doing @"{{\test" yields "{\test". have looked on msdn documentation , other questions tell use backslash escaping character, doesn't seem work.
there 2 levevls of escaping here:
1. escaping string literals
in c# strings, backslash (\) used special character , needs escaped \. if resulting string should \\uncpath\folder string literal should var s = "\\\\uncpath\\folder".
2. escape format strings
string.format uses curly braces place holders, need escape them braces.
so let's have
string title = "mytitle"; string filtername = "filter"; then
string.format("{{\\test {0}, {1}}}", title, filtername); results in
{\test mytitle, filter} if want 2 curly braces @ beginning, need put 4 in format string:
string.format("{{{{\\test {0}, {1}}}", title, filtername); results in
{{\test mytitle, filter} if provide clear example of trying achieve, may tell correct format string.
side note: in c# 6 last example $"{{{{\\test {title}, {filtername}}}" (using string interpolation without explicitly calling string.format)
note: visual studio debugger shows unescaped string literal. if declare string string s = "\\" see both backslashes in debugger windows, if console.writeline(s) 1 backslash written console.
Comments
Post a Comment