我使用这个模板来生成一个内部链接列表,该列表包含在xHTML文档中通过"id='{title}'"引用的各个部分。
这是有可能的吗?如果是这样,能否告诉我如何实现?谢谢。
<xsl:template match="folder/folder" mode="folderlist">
<li>[<a href="#{title}"><xsl:value-of select="title" /></a>]</li>
</xsl:template>
它能够工作,但是当然不能通过验证,因为“title”的内容可能包含空格,而规则指出“id”不能有空格。
假设{title}的内容为:“带有空格的标题”。
我想要实现的是从{title}的内容中移除空格,仅将其插入到href =中,使结果看起来像这样:
<a href="Titlewithspaces">
然后以某种方式再次使用{title}的原始内容,使得完整的结果行变成:
<li>[<a href="#Titlewithspaces">Title with spaces</a>]</li>
这是有可能的吗?如果是这样,能否告诉我如何实现?谢谢。
<xsl:variable name="vAlphaNum"> 	
0123456789+,</xsl:variable>
<li>[<a href="#{translate(title, $vAlphaNum, '')}"><xsl:value-of select="title" /></a>]</li>
我该如何创建变量'vAlphaNum',使用反映此模式的正则表达式 匹配模式:[A-Za-z][A-Za-z0-9:_.-]
(意味着只允许这些字符,所有其他字符都将被删除)? - snahl[A-Za-z][A-Za-z0-9:_.-]
。由于我没有使用XSLT 2.0,是否有办法在XSLT 1.0中应用这个规则?(或者我应该把它作为一个新问题来提出?) - snahlcontains($vLegal1stChars, substring($vYourString,1,1))
。我的答案有用吗? - Dimitre Novatchev