Удалить escape-последовательность в c # - PullRequest
0 голосов
/ 06 апреля 2011

Я хотел бы заменить escape-последовательность из строки test= "\"hi hello\" " на строку test=" "hi hello" ".В основном я хочу заменить \" на ".Есть предложения?

Ответы [ 3 ]

1 голос
/ 06 апреля 2011

Это невозможно, так как если вы удалите escape-последовательности, у вас будет недопустимая строка.

Вы можете использовать дословные строковые литералы, но они также требуют экранирования двойных кавычек.

Не могли бы вы объяснить, почему вы хотите удалить escape-последовательности? Они не будут видны при выводе строки.

Отладчик будет отображать escape-последовательности в качестве помощи, но если вы выведете строку, вы их не увидите.

Console.Out.WriteLine("\"hi there \"");
// outputs "hi there "
0 голосов
/ 06 апреля 2011
string test = "\"hi hello\" ";
test.Replace("\"", "");
Console.Out.WriteLine(test);

Это выдает

привет привет

на консоли.

0 голосов
/ 06 апреля 2011
test = test.Replace("\\", "");

Если вы не ищете замену \ в строке, ваши параметры ограничены дословной строкой:

string test = @" ""hi hello"" ";

Обратите внимание, что \" был заменен ""

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...