通过XSLT正则表达式匹配XML标记中的变量字符串

通过XSLT正则表达式匹配XML标记中的变量字符串,xml,xslt-2.0,Xml,Xslt 2.0,我是XSLT新手,我想知道如何匹配字符串,比如,实际上我想每次都匹配变量文本ccvccvc,并将其复制到转换中使用。 最终结果应该是: 输入字符串: 输出字符串:\begin{array}{xxx}\end{array} 它是一个可以在mml:table上下文中使用的属性。它是一个可以在mml:table上下文中使用的属性。试试看 <xsl:template match="mml:mtable[@class]"> <xsl:text>\begin{array}{<

我是XSLT新手,我想知道如何匹配字符串,比如
,实际上我想每次都匹配变量文本
ccvccvc
,并将其复制到转换中使用。 最终结果应该是:

  • 输入字符串:
  • 输出字符串:
    \begin{array}{xxx}\end{array}

  • 它是一个可以在mml:table上下文中使用的属性。

    它是一个可以在mml:table上下文中使用的属性。

    试试看

    <xsl:template match="mml:mtable[@class]">
      <xsl:text>\begin{array}{</xsl:text>
      <xsl:value-of select="@class"/>
      <xsl:text>}</xsl:text>
      <xsl:apply-templates/>
      <xsl:text>\end{array}</xsl:text>
    </xsl:template>
    
    
    \开始{array}{
    }
    \结束{array}
    
    试试看

    
    \开始{array}{
    }
    \结束{array}
    
    输入的“字符串”不是字符串,而是XML元素节点。您的“输出字符串”不是字符串,而是XSLT程序文本的片段。因此,我认为您在标题中对正则表达式的引用表明您对XSLT处理模型感到困惑。请记住,XSLT将节点树作为输入处理,以生成节点树作为输出

    我认为Martin可能已经正确地猜到了您需要做什么,但我怀疑您在理解XSLT方面可能存在一些差距,您需要先解决这些差距,然后才能开始工作。

    您的输入“字符串”不是字符串,而是XML元素节点。您的“输出字符串”不是字符串,而是XSLT程序文本的片段。因此,我认为您在标题中对正则表达式的引用表明您对XSLT处理模型感到困惑。请记住,XSLT将节点树作为输入处理,以生成节点树作为输出


    我认为Martin可能已经正确地猜到了您需要做什么,但我怀疑您在理解XSLT方面可能存在一些差距,您需要先解决这些差距,然后才能开始工作。

    谢谢您的回复,Michael。我之前告诉过你们,我是XSLT世界的新手,我有太多东西要学,你们说的是完美和专业的答案再次感谢你们。谢谢你们的回复Michael。我之前告诉过你们,我是XSLT世界的新手,我有太多东西要学,你们说的是完美和专业的答案,再次感谢你们。