我想知道是否可以使用analyze-string
並在RegEx中設置多個組,然後將所有匹配組存儲在變量中以供稍後使用。XSL分析字符串 - >匹配子字符串到多個變量
像這樣:
<xsl:analyze-string regex="^Blah\s+(\d+)\s+Bloo\s+(\d+)\s+Blee" select=".">
<xsl:matching-substring>
<xsl:variable name="varX">
<xsl:value-of select="regex-group(1)"/>
</xsl:variable>
<xsl:variable name="varY">
<xsl:value-of select="regex-group(2)"/>
</xsl:variable>
</xsl:matching-substring>
</xsl:analyze-string>
這並不實際工作,但是這是諸如此類的事情,我以後,我知道我可以在一個變量包住analyze-string
,但似乎愚蠢的每一個我必須處理RegEx,效率不高,我應該能夠處理正則表達式並存儲所有組以備後用。
任何想法?
稍後我將如何訪問這些值? 我習慣了使用$ varname 你是否可以像數組一樣訪問這些數據?我需要稍後使用值如果測試 – TheStoneFox 2012-07-28 15:25:14
您可以訪問'$ groups [1]/x','$ groups [1]/y','$ groups [2]/x','$ groups [2 ]/y'等等。你當然也可以進一步處理元素,例如' xsl:for-each>'或apply-templates例如' '。 –
2012-07-28 16:25:19
這是一種享受,非常感謝! – TheStoneFox 2012-07-28 16:51:53