Mi chiedevo se è possibile utilizzare analyze-string
e impostare più gruppi all'interno della RegEx e quindi memorizzare tutti i gruppi corrispondenti in variabili da utilizzare in seguito.XSL Analyze-String -> Matching-Substring in più variabili
in questo modo:
<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>
Questo in realtà non funziona, ma questo è il genere di cosa che sto dopo, so di poter avvolgere il analyze-string
in una variabile, ma che sembra sciocco che per ogni gruppo devo elaborare il RegEx, non molto efficiente, dovrei essere in grado di elaborare la regex una volta e memorizzare tutti i gruppi per l'uso in seguito.
Qualche idea?
Come accederei a quei valori in seguito? Sono abituato a usare $ varname Accedete a quelli come gli array? Devo usare i valori più tardi in In se i test – TheStoneFox
Puoi accedere a '$ gruppi [1]/x',' $ gruppi [1]/y', '$ gruppi [2]/x',' $ gruppi [2 ]/y' e così via. Naturalmente puoi anche elaborare ulteriormente gli elementi, ad es. ' xsl: for-each>' or apply-templates, ad es. ' '. –
Questo funziona davvero bene, grazie mille! – TheStoneFox