bernova Ответов: 3

Как удалить символ в C#


Всем привет

Как удалить символ"\", "" из следующей строки :

"\"status\":\"ok\""


Что я уже пробовал:

Я использую следующий код , но при запуске результат :

"статус": "ОК";

но мне нужно :
статус: ОК

код:
string s = arr[i].Replace("'\\'", " ")

3 Ответов

Рейтинг:
1

Patrice T

Вам нужно понять escape-символы и литералы в C#.
Экранирование в C#: символы, строки, строковые форматы, ключевые слова, идентификаторы[^]

В зависимости от того, откуда взялась строка, пользовательский ввод, внешний файл, литерал в коде, литерал в исполняемом файле, конечный результат не будет одинаковым.
если у вас есть "\"status\":\"ok\"" в исходном коде у вас будет "status":"ok" в исполняемом файле.

Решение, вероятно, то, что вам нужно, чтобы решить эту проблему.


Рейтинг:
0

F-ES Sitecore

string s = arr[i].Replace("\"", "")


Рейтинг:
0

George Swan

Решение Sitecore является правильным. Похоже, что вы получаете escape-символы в своих строках. Если вы хотите исключить все символы, которые не являются буквенно-цифровыми или ':', вы можете использовать класс Regex следующим образом


string testString = "\"status\":\"ok\"";
var regex = new Regex("[^a-zA-Z0-9 :]");
string cleanedString = regex.Replace(testString, "");
Console.WriteLine(cleanedString);
Console.ReadLine();

То,что он делает,-это сопоставление всех символов, которые не являются a-z, A-Z, 0-9 или:, и замена каждого из них пустой строкой.