我需要查找文本字符串是否包含关键字,然后将关键字设为粗体。它应该与搜索的关键字完全匹配,并且与包含关键字的单词不匹配。
例如(使用xslt 1.0): 关键字搜索'现在'在文本中,在目前的情况下'应该得到一个匹配,但现在'不应该匹配'对于研讨会演示'
这是一个xsl代码段 - 问题是它匹配'演示'在寻找' present'在param' mystring'等于'对于研讨会演示,这是好的'
<xsl:variable name="keywordList">
<Keywords>
<Keyword>present</Keyword>
<Keyword>random</Keyword>
</Keywords>
</xsl:variable>
<xsl:variable name="KeywordsToFind" select="msxsl:node-set($keywordList)/Keywords/Keyword" />
<xsl:call-template name="BoldKeywords">
<xsl:with-param name="mystring" select="."/>
//Recursive template
<xsl:template name="BoldKeywords">
<xsl:param name="mystring"/>
<xsl:param name="keywords" select="$KeywordsToFind"/>
<xsl:variable name="keyword" select="$keywords[contains($mystring,.)][1]"/>
//Make keyword bold
</xsl:template>
感谢您的帮助。