[英]string.replace is not working
我有接受字符串(基本上是XML文档)的函数。 我正在进行此更改:
if (filterXml.Contains("&"))
{
filterXml.Replace("&", "&");
}
正在达到此条件,但没有替换
& to &
怎么了
请记住,字符串是不可变的。 因此,您必须将Replace方法的返回值(注意它返回一个String对象)分配回您的变量。
if (filterXml.Contains("&"))
{
filterXml = filterXml.Replace("&", "&");
}
如果您要处理String对象,请确保阅读String参考页
您需要保存结果:
filterXml = filterXml.Replace("&", "&");
但我建议编码所有特殊的XML字符。
您甚至不需要执行“包含”检查。 只需执行以下操作:
filterXml = filterXml.Replace("&", "&");
如果字符串中没有任何“&”号,则不会有任何变化。
尝试-
if (filterXml.Contains("&"))
{
filterXml = filterXml.Replace("&", "&");
}
字符串在.net中是不可变的,因此replace
函数将返回一个新字符串,而不是更改被调用的字符串。 您可以将更改后的结果分配给包含原始字符串值的变量。
if (filterXml.Contains("&"))
{
filterXml = filterXml.Replace("&", "&");
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.