我正在提取一个RSS源,其中包含一个笑话,后跟一些链接,分享不同服务上的笑话。如下图所示:
值得注意的是,当我尝试从此输出中复制并粘贴文本时,链接未复制到记事本中,并作为图片粘贴到MS Word中。
在我的XSL中,我使用
substring-before
试图从输出中排除这些链接,但我能想到的唯一一致的字符是来自超链接的<a href
,它始终是在末尾。这可能吗?我的第一次传球失败了,我应该包括一个逃脱角色吗?
也许我会尝试排除最后X
个字符以删除链接
很遗憾,我找不到Feed的XML版本,我的来源是:http://feeds.feedburner.com/DailyJokes-ACleanJokeEveryday?format=xml
这是我正在使用的XSL,它目前是硬编码在最近的笑话结束时打破(我的下一个障碍是遍历此列表)
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html"/>
<xsl:template match="/">
<xsl:apply-templates select="//item[position() < 2]"/>
</xsl:template>
<xsl:template match="item">
<content-item>
<h1><xsl:value-of select="title"/></h1>
<p><xsl:value-of select="substring-before(description, 'mower')" disable-output-escaping="yes"/></p>
<br/><br/>
<p>"The following is here for testing purposes and will be removed"<br/><br/><xsl:value-of select="substring-after(description, 'lawn')" disable-output-escaping="yes"/></p>
<br/><br/>
</content-item>
</xsl:template>
</xsl:stylesheet>
我通过SharePoint 2013 RSS提要Web部件呈现输出
答案 0 :(得分:0)
在尝试查看正确的XML时,我发现了解决方案。我查看了源URL的页面源,并且我看到最终字符显示如下:
<title>Hunting with a wife #Joke #Humor</title><description>A hunter visited another hunter and was given a tour of his home. In the den was a stuffed lion.<br /><br />The visiting hunter asked, "when did you bag him?"<br /><br />The host said, "that was three years ago, when I went hunting with my wife."<br /><br />"What's he stuffed with," asked the visiting hunter. "My wife."<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/DailyJokes-ACleanJokeEveryday?a=RT1LsKVBV3Y:0LcrJjJq2X4:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/DailyJokes-ACleanJokeEveryday?d=yIl2AUoC8zA" border="0"></img></a> <a href....
关键是,a href没有
<
它使用HTML标记<
。
substring-before(description, '<a href')
有效。