我有這樣的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>
但它不返回正確的結果..
任何建議,我怎麼能修改我的代碼以獲得正確的輸出?
它返回什麼結果?總是告訴我們什麼不起作用。 「它不工作」是不夠的。 –