【发布时间】:2012-12-13 15:28:37
【问题描述】:
我需要从这段代码中获取图像源:
<content:encoded>
<![CDATA[
<span><img width="200" src="..."></span><br /> [some Text] ]]>
</content:encoded>
这是我尝试过的:
<xsl:variable name="ImageURL" select="substring-before(substring-after(content, 'src="'), '">')" />
<img alt="" src="{$ImageURL}" width="75" height="49" />
很遗憾,我的解决方案失败了。我还尝试了其他一些语法,但主要部分是相同的。有人可以帮帮我吗?
感谢所有的努力!
【问题讨论】:
-
您到底使用哪个 XSLT 处理器?如果可能,应该使用扩展函数将
content:encoded元素的内容解析为XML片段,然后简单地使用片段上的XPath来访问img元素的src属性。span元素。 -
抱歉,我不是 XSLT 专业人士。那么您需要什么信息(XSLT 处理器?)?我已经尝试使用 ":encoded" 但如果我使用它会出现错误。我必须如何使用 XPath?
-
如何在 XSL Styleshhet 中使用 XPath?我查了一下,但我不知道如何正确使用它:-/
-
我想知道您用来执行 XSLT 代码的软件的名称。常见的 XSLT 1.0 处理器有 Apache Xalan(存在于 Java 和 C++ 中)、Saxon 6、LibXslt/XsltProc、XslCompiledTransform、MSXML 等等。至于我的建议,现在不用担心,首先尝试找出您使用的 XSLT 处理器,然后我们可以进一步提供帮助。您可以通过您的 XSLT 处理器运行 home.arcor.de/martin.honnen/xslt/processorTest.xml 以输出有关它的一些详细信息。
-
好问题...它是嵌入在 Sharepoint 2010 中的 WebPArt。我认为它是 XslCompiledTransform。很遗憾,我无法在 Sharepoint 中使用您的测试。