我想用C#替换直引号(“)。
我可能会遗漏一些小的东西,但我无法用正常的string.Replace();
someWord.Replace(@""", "&");
我可以使用普通string.Replace();
进行操作,还是需要使用Regex
?如果是后者,那么Regex
替换会是什么样的?
答案 0 :(得分:20)
我同意Heinzi,您应该使用"
代替&
,&
代表“&”
顺便说一下,在调用Replace方法之后,不要忘记再次将值设置为someWord:
someWord = someWord.Replace("\"", """);
还有另一种方法可以做到这一点。添加引用System.Web,并使用System.Web; 然后:
someWord = HttpUtility.HtmlEncode(someWord);
答案 1 :(得分:11)
someWord.Replace("\"", "&");
或
someWord.Replace(@"""", "&");
(引号在常规字符串中以\"
转义,在逐字字符串中以""
转义。)
但你可能意味着
someWord.Replace("\"", """);
因为直引号的HTML实体是"
,而不是&
。
答案 2 :(得分:1)
someWord.Replace(@"""", "&");
或
someWord.Replace("\"", "&");