8wDlpd.png
8wDFp9.png
8wDEOx.png
8wDMfH.png
8wDKte.png

无法在 XSLT 中拆分和合并

Farbod Ahmadian 1月前

12 0

我有一个 Xml如何使用 xsl 删除字符串的某些部分。例如,我需要删除整个

我有一个 Xml

<input Inputxml="&ltOrder..&lt;LinePPlineNO=&quot;1@quot;Line/&gt; &gt;" >

如何使用 xsl 删除字符串的某些部分。例如,我需要从中删除整个 &lt; 字符串 &gt; PPline 1

我需要将字符串分成 3 个部分,删除从 lt 到 gt 的字符串,并合并字符串的第 1na dpart 3 部分

  <Test Attrib1="b" Attrib2="C" Inputxml="
      &lt;OrderLine  OrderedQty="1" PrimeLineNo="1" ShipNode="ABC" $gt;
       &lt;/OrderLine $gt;
     &lt;OrderLine OrderedQty="1" PrimeLineNo="2" ShipNode="ABC"  $gt;      
  &lt;/OrderLine $gt;" />

例如,我可能有 100 条订单行,但我需要找到包含 Prime 行 1 的行并将其删除。因此,如果我必须删除一行,我必须从 lt; 删除到 gt;

帖子版权声明 1、本帖标题:无法在 XSLT 中拆分和合并
    本站网址:http://xjnalaquan.com/
2、本网站的资源部分来源于网络,如有侵权,请联系站长进行删除处理。
3、会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。
4、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
5、站长邮箱:yeweds@126.com 除非注明,本帖由Farbod Ahmadian在本站《xml》版块原创发布, 转载请注明出处!
最新回复 (0)
  • 好的..我在 xml 中有很多属性,其中一个属性是作为字符串的 xml..我不知道如何从 xml(存储为字符串)中删除元素..我尝试使用 disable-output-escaping=yes..但它没有给我任何 xml ...如果它是 xml 我可以轻松删除元素但它是一个字符串..我的意思是..像 lt; gt; quot;

  • @MartinHonnen 是的,我需要从 Inputxml 的值中删除一个元素。我正在使用 XSLT2.0。是的,它必须是转义的 xml < >;有点像 xml。

  • 你的例子令人困惑。如果你有一个 XML 输入,例如:

    <input Inputxml="&lt;order&gt;&lt;Line PPlineNO=&quot;1&quot;&gt;Bingo&lt;/Line&gt;&lt;/order&gt;"/>
    

    其中, Inputxml 属性保存着转义的 XML:

    <order><Line PPlineNO="1">Bingo</Line></order> 
    

    你可以使用:

    <xsl:template match="input">
        <result>
            <xsl:value-of select="substring-before(substring-after(@Inputxml, 'PPlineNO=&quot;1&quot;&gt;'), '&lt;/Line&gt;')" />
        </result>
    </xsl:template>
    

    要得到:

    <result>Bingo</result>
    

    请注意,这不是解析 XML(或者更确切地说是以前的 XML)的好方法。首先取消转义,然后将其解析为 XML 会更聪明。在 XSLT 3.0 中,您可以使用该 parse-xml() 函数来实现这一点。在 XSLT 1.0/2.0 中,您可以执行以下操作:

    <xsl:value-of select="@Inputxml" disable-output-escaping="yes"/>
    

    将结果保存到文件,并使用另一个 XSLT 样式表处理生成的文件。

返回
作者最近主题: