2013-09-30 173 views
0

我们一直在努力尝试获取XSLT替换函数的基本示例。XSLT正则表达式替换函数

我要离开这个文本在机智的背景下,但你可能要跳到我们使用Mirth HL7消息拉动更新

。我们不确定这是否支持XSLT版本2,但我们相信它使用SAXON - http://saxon.sourceforge.net/,据称它支持XSLT2并因此支持替换功能。

在任何情况下,我们尝试使用XSLTCake试图获得甚至演示替换工作,无济于事。我们已经看到这或者被引用为replacefn:replace以及使用其他库的其他建议。

如果Mirth不支持XSLT2,我们需要XSLT1的解决方法。我们在这里找到了一个:XSLT string replace - 但一直无法让这个工作。

这是一个难以回答的单个问题,因为我问很多,但这里有...任何人都可以提供一个在XSLT中执行正则表达式替换的工作示例吗?最好能在联机解析器中运行以供参考。

这是sample - 这显然应该工作。 1

更新

感谢Michael凯下面提供的代码,以确定XSLT版本。

<!--Transformed using 1.0 provided by Apache Software Foundation (Xalan XSLTC)--> 

所以事实证明,我们对使用SAXON的Mirth都是错误的,因此支持XSLT2。我将更新我们尝试实施版本1的解决方法。

回答

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> 

插入到样式表中,以便在结果文档中输出注释。

一旦你知道你正在使用什么编程语言,你可以开始考虑编写代码。

+0

谢谢,那就是为什么我们无法使其大部分工作!更新。 –

+0

不只是更新,而是接受Micheal的回答。 – Sid

+0

似乎有人已经成功地在撒克逊交换了在快乐之内的Xalan的地方,例如见http://www.mirthcorp.com/community/forums/showthread.php?t=952 –