【问题标题】:XSL substring with in another string另一个字符串中的 XSL 子字符串
【发布时间】:2026-01-31 21:30:03
【问题描述】:

我的 XML

<?xml version="1.0" encoding="UTF-8" standalone="no"?><?xml-stylesheet type="text/xsl" href="Results.xsl"?>
  <TestCase>
    <Details>

    <platform>Windows 7-Firefox\prod</platform>

    </Details>
  </TestCase>

我需要检索 Windows 7 Firefox prod 作为单独的字符串,我能够检索除“Firefox”之外的所有字符串,请帮助检索它

我的 XSL

<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Edited by XMLSpy® -->
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
  <html>
  <body>


       <OS><xsl:value-of select="substring-before(TestCase/Details/platform, '-')"/></OS>
<inst><xsl:value-of select="substring-after(TestCase/Details/platform, '\')"/></inst>

<brow><xsl:value-of select="substring-before(substring-after(TestCase/Details/platform, '\'),'-')"> </brow>

  </body>
  </html>
</xsl:template>
</xsl:stylesheet>

【问题讨论】:

    标签: xml xslt


    【解决方案1】:

    你有这个倒退(并且错过了结束!):

    <brow><xsl:value-of select="substring-before(substring-after(TestCase/Details/platform, '\'),'-')"> </brow>
    

    应该是:

    <brow>
        <xsl:value-of select="substring-before(substring-after(TestCase/Details/platform, '-'),'\')"/> 
    </brow>
    

    【讨论】: