c# - csharp string escape




Posso escapar de uma aspa dupla em uma literal string literal? (3)

Em uma literal string literal (@ "foo") em C #, as barras invertidas não são tratadas como escapes, portanto, fazer \ "para obter uma aspa dupla não funciona. Existe alguma maneira de obter aspas duplas em um literal de cadeia literal? ?

Isso, compreensivelmente, não funciona:

string foo = @"this \"word\" is escaped";

Isso deve ajudar a esclarecer qualquer dúvida que você possa ter: c # literais

Aqui está uma tabela do conteúdo vinculado:


Para adicionar mais algumas informações, o seu exemplo funcionará sem o símbolo @ (evita o escape com \), desta forma:

string foo = "this \"word\" is escaped!";

Ele funcionará nos dois sentidos, mas eu prefiro o estilo de aspas duplas para que seja mais fácil trabalhar, por exemplo, com nomes de arquivos (com muitos \ na string).


Use uma aspa dupla duplicada.

@"this ""word"" is escaped";

saídas:

this "word" is escaped




verbatim-string