我们一直在努力试图让XSLT替换功能的基本示例正常工作。
我将此文本留给上下文,但您可能希望跳到更新
我们正在使用Mirth来提取HL7消息。我们不确定它是否支持XSLT版本2,但我们认为它使用SAXON - http://saxon.sourceforge.net/,据称它支持XSLT2,因此支持替换功能。
在任何情况下,我们都尝试使用XSLTCake来尝试甚至让演示替换工作,但无济于事。我们已经看到这个引用为replace
或fn:replace
以及其他一些使用其他库的建议。
如果Mirth不支持XSLT2,我们需要针对XSLT1的解决方法。我们在这里找到了一个:XSLT string replace - 但是也无法让它工作。
这很难解决一个问题,因为我要求很多,但是这里有...可以有人提供在XSLT中执行正则表达式替换的工作示例吗?最好是一个将在在线解析器中运行以供参考。
更新
感谢Michael Kay提供以下代码来确定XSLT版本。
<!--Transformed using 1.0 provided by Apache Software Foundation (Xalan XSLTC)-->
所以事实证明我们对使用SAXON并因此支持XSLT2的Mirth都错了。我将尝试实施版本1解决方法。
答案 0 :(得分:3)
首先找出您正在使用的XSLT处理器。这很简单:插入此
<xsl:comment>Transformed using <xsl:value-of select="system-property('xsl:version')"/> provided by <xsl:value-of select="system-property('xsl:vendor')"/></xsl:comment>
进入样式表以在结果文档中输出注释。
一旦你知道你正在使用什么编程语言,你就可以开始考虑编写代码了。