0

我有一个要求,源文件名是Rocky_InvoiceNo(uniquevalue)_Timestamp.xml..

目标系统希望文件名InvoiceNo(uniquevalue)_Timestamp.xml. 任何人都可以分享xslt代码来实现这一点。

4

2 回答 2

0

检查此代码:-

        <xsl:variable name="outputpath_1" select="substring-after('Rocky_InvoiceNo(uniquevalue)_Timestamp.xml', '_')"/>
    <xsl:value-of select="$outputpath_1"/>
于 2021-08-02T11:37:26.350 回答
0

你的问题的背景并不完全清楚。

base-uri()通常,您可以使用或函数检索源 XML 文档的文件路径 document-uri(),例如

<xsl:variable name="source-path" select="base-uri()"/>

然后您可以使用以下方法删除"Rocky_"文件名的一部分:

<xsl:variable name="target-path" select="replace($source-path, 'Rocky_', '')"/>

并使用生成的路径使用xsl:result-document指令创建结果文档,例如

<xsl:result-document href="{$target-path}">
    <!-- your tranformation here -->
</xsl:result-document>

但是,恕我直言,通过启动 XSL 转换的应用程序而不是在 XSLT 样式表本身中执行此任务会简单得多。

于 2021-08-02T16:35:30.233 回答