Comment ferais-je "substring (variable, 1,1) entre a-z ou A-Z" alors faire X else faire Y en utilisant XSLT? Je sais qu'une option serait d'utiliser regex mais je m'attendrais à ce qu'il y ait quelque chose qui ne soit pas tellement exagéré.Question de chaîne XSLT très simple
1
A
Répondre
3
Une solution simple XSLT 1.0:
Cette transformation:
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text"/>
<xsl:variable name="vLetters"
select="'ABCDEFGHIKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'"/>
<xsl:variable name="vText" select="'1Text'"/>
<xsl:template match="/">
<xsl:choose>
<xsl:when test=
"contains($vLetters, substring($vText,1,1))">
Letter
</xsl:when>
<xsl:otherwise>
Not Letter
</xsl:otherwise>
</xsl:choose>
</xsl:template>
</xsl:stylesheet>
lorsqu'il est appliqué sur tout document XML (non utilisé), produit le résultat recherché:
Not Letter
Selon le cas, on peut ajouter le traitement est nécessaire à chacune des deux "clauses" (<xsl:when>
et <xsl:otherwise>
) de l'instruction <xsl:choose>
.
1
Et pour XSLT 2.0, vous pouvez utiliser la fonction d'expression régulière matches
:
<xsl:choose>
<xsl:when test="matches($variable1, '^[a-zA-Z].*$')">
Match
</xsl:when>
<xsl:otherwise>
NoMatch
</xsl:otherwise>
</xsl:choose>
Questions connexes
- 1. Une question SSRS 2008 très simple
- 2. Question iPhone très simple. Comment faire UIPickerView avec deux colonnes?
- 3. javascript très simple échouant
- 4. XSLT et XML Question
- 5. Suppléments de chaîne XSLT
- 6. xml xslt question
- 7. Question XCode objectif-C très basique
- 8. une simple question Regex
- 9. WPF: XamlParserException pour un formulaire très simple?
- 10. LINQ Très basique à SQL Question
- 11. (simple) booster thread_group question
- 12. OO Style - Question simple
- 13. simple carte couleur question
- 14. Mod Rewrite - Question simple
- 15. Question PHP simple
- 16. simple ajax question onclick
- 17. XML simple Question
- 18. nmake - simple question sur
- 19. simple question SQL
- 20. question simple mod rewrite
- 21. Simple DataBinding question
- 22. PostgreSQL question simple déclencheur
- 23. classes PHP question simple
- 24. Simple question Unix - Configurer
- 25. question simple pointeur imbriqué
- 26. C#/regex, question simple
- 27. Manipulation de chaîne simple dans VB.NET
- 28. Simple question - pas de résultats (Colonnes ListView)
- 29. Problème d'encodage XSLT, question dans le résultat
- 30. Analyseur SAX en ligne de commande très simple pour les fichiers XML
Hmmh. Pourquoi regex serait-il trop? XSLT lui-même est assez lourd que je pense qu'il n'y a pas besoin d'être préoccupé par l'utilisation de RE. De bons processeurs devraient les pré-compiler quand même, si possible. – StaxMan
Est-ce que je suis correctement que vous voulez vous assurer que le premier caractère d'une variable chaîne est une lettre majuscule ou minuscule? – el2iot2