使用xslt 1.0获取特定子字符串

时间:2012-04-01 18:38:47

标签: xslt-1.0

我有一个字符串如下。

<freeForm>
   <text>mnr.getValue().put("xyz","pqr");</text>
</freeForm>

从上面的xml部分我需要得到字符串 xyz

请提供使用xslt1.0实现相同功能的指示。

1 个答案:

答案 0 :(得分:0)

使用此XPath表达式

substring-before(
     substring-after(/*/*, &apos;"&apos;),
     &apos;"&apos;
                 )

这是一个简短,完整的XSLT转换,用于评估此XPath表达式并输出评估结果

<xsl:stylesheet version="1.0"
 xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
 <xsl:output method="text"/>

 <xsl:template match="/">
  <xsl:value-of select=
   'substring-before(
         substring-after(/*/*, &apos;"&apos;),
         &apos;"&apos;
                     )'/>
 </xsl:template>
</xsl:stylesheet>

在提供的XML文档上应用此转换时

<freeForm>
   <text>mnr.getValue().put("xyz","pqr");</text>
</freeForm>

产生了想要的正确结果

xyz