【发布时间】:2009-10-31 15:14:32
【问题描述】:
使用 XSLT 和 XPath 1.0,我想转义一个字符串以便在 URL 上使用,例如:
<description>one word & another</description>
所以,描述元素的 text() 应该得到 URL 转义。
我该怎么做?
使用 C# (XslCompiledTransform) 代码如下:
string a = Server.UrlEncode("one word & another");
并且会产生:
one+word+%26+another
有什么建议吗?
【问题讨论】:
-
您调整后的代码做出了无效假设。如果你有 &在您的 XML 中,并使用 XML 阅读器对其进行解析,您将永远不会看到 &在你记忆中的字符串中。 XML 解析器会自动将其转换为未转义的版本。因此,除非您的 UrlEncode sn-p 中的字符串使用正则表达式或其他东西(您永远不应该这样做)从 XML 中提取出来,否则它不适用
-
是的,当然,你是对的。您将如何从 XSLT 获取该输出?