mic*_*man 7 xslt xpath xslt-1.0
我正在寻找如何在XSLT-1.0中创建自己的XPath函数.例如,我有一个简单的XPath表达式,我在我的XSLT模板中一次又一次地使用它.我想创建自己的XPath函数myOwnFunction($var)
,调用XPath表达式.
示例表达式:
normalize-space(substring-after(substring-after($var, '-'), '-'))
Run Code Online (Sandbox Code Playgroud)
Dim*_*hev 11
前面两个答案说明了一切:XSLT 1.0没有提供创建可以在XPath表达式中引用的函数的方法.
如果有人想要这样的功能,他们应该开始使用XSLT 2.0(并使用标准的<xsl:function>指令),或者:
使用<func:function>
EXSLT提供的扩展元素.请注意,很少有XSLT 1.0处理器实现此扩展元素.
使用特定的XSLT处理器功能(如果存在).对于.NET平台可以使用XsltContext类中,IXsltContextFunction接口和技术,像这样.
无论如何,所有这些都不是XSLT编程,所以我的建议是认真开始使用XSLT 2.0.