Ответ 1
Используйте дублированную двойную кавычку.
@"this ""word"" is escaped";
выходы:
this "word" is escaped
В текстовом литерале строки (@ "foo" ) в С# обратные косые черты не рассматриваются как escape-последовательности, поэтому делать "двойную цитату" не работает. Есть ли способ получить двойную кавычку в verbatim string literal?
Это понятно, что не работает:
string foo = @"this \"word\" is escaped";
Используйте дублированную двойную кавычку.
@"this ""word"" is escaped";
выходы:
this "word" is escaped
Использовать двойные кавычки.
string foo = @"this ""word"" is escaped";
Чтобы добавить дополнительную информацию, ваш пример будет работать без символа @
(он предотвращает экранирование с помощью \), таким образом:
string foo = "this \"word\" is escaped!";
Он будет работать в обоих направлениях, но я предпочитаю стиль двойной кавычки, чтобы он работал легче, например, с именами файлов (с большим количеством строк в строке).
Это должно помочь прояснить любые вопросы, которые могут возникнуть у вас: С# literals
Вот таблица из связанного контента:
string str = @"""Hi, "" I am programmer";
OUTPUT - "Привет", я программист
Вы можете ссылаться '@' префикс перед любой строкой в С#.NET
string s = "this \"word\" is escaped";
//Результат будет → это "слово" экранировано