Как заменить прямую кавычку (")

c# .net regex string replace

26400 просмотра

3 ответа

Я хотел бы заменить прямую кавычку (") с помощью C #.

Я мог бы пропустить что-то маленькое, но я не могу получить это с нормальным string.Replace();

someWord.Replace(@""", "&");

Могу ли я сделать это с нормальным string.Replace();или мне нужно использовать Regex? Если последнее, как будет Regexвыглядеть замена?

Автор: Willem Источник Размещён: 12.11.2019 09:47

Ответы (3)


20 плюса

Решение

Я согласен с Хайнци, вы должны использовать "вместо &, и &означает «&» Кстати, после вызова метода Replace не забудьте снова установить значение someWord:

someWord = someWord.Replace("\"", """);

И есть другой способ сделать это. Добавьте ссылку System.Web и с помощью System.Web; тогда:

someWord = HttpUtility.HtmlEncode (someWord);

Автор: ojlovecd Размещён: 28.10.2011 04:43

11 плюса

someWord.Replace("\"", "&");

или же

someWord.Replace(@"""", "&");

(Кавычки экранируются как \"в обычных строках, так и ""в дословных.)

Но вы, вероятно, имели в виду

someWord.Replace("\"", """);

поскольку сущность HTML для прямых кавычек есть ", нет &.

Автор: Heinzi Размещён: 28.10.2011 04:31

1 плюс

someWord.Replace(@"""", "&");

или же

someWord.Replace("\"", "&");
Автор: Petar Ivanov Размещён: 28.10.2011 04:32
32x32