我有这样的X XML识别模式替换文本节点,XSLT - 通过使用正则表达式
<doc>
<p>ABC Number 132, Decimal 321, AAB Double 983 DEF GHI 432 JKL</p>
</doc>
什么如果,“小数”,“双师型”后面加一个空格我的目标“号”(”' )后跟一个数字,那么中间的空格值应该被*字符替换。
所以输出应该是,
<doc>
<p>ABC Number*132, Decimal*321, AAB Double*983 DEF GHI 432 JKL</p>
</doc>
我有以下的xsl此,
<xsl:template match="p">
<xsl:analyze-string select="text()" regex="(Number/s/d)|(Decimal/s/d)|(Double/s/d)">
<xsl:matching-substring>
<xsl:choose>
<xsl:when test="regex-group(1)">
<xsl:value-of select="'Number*'"/>
</xsl:when>
<xsl:when test="regex-group(2)">
<xsl:value-of select="'Decimal*'"/>
</xsl:when>
<xsl:when test="regex-group(3)">
<xsl:value-of select="'Double*'"/>
</xsl:when>
</xsl:choose>
</xsl:matching-substring>
<xsl:non-matching-substring>
<xsl:value-of select="."/>
</xsl:non-matching-substring>
</xsl:analyze-string>
</xsl:template>
但它不返回正确的结果..
任何建议,我怎么能修改我的代码以获得正确的输出?
它返回什么结果?总是告诉我们什么不起作用。 “它不工作”是不够的。 –