首页 > 解决方案 > XPath 中的变量?

问题描述

我正在做一个项目,我必须将 xpath 发送到应用程序进行处理,有些地方我必须编写重复的 XPath。是否可以将其分配给变量并使用该变量进行重复:

示例 XML 输入:

<?xml version="1.0" encoding="UTF-8"?>
<root>
    <element1>
        <element2>
            <element3>
                <element4>
                    <element5>1234567890</element5>
                </element4>
            </element3>
        </element2>
    </element1>
</root>

我正在使用的 XPath:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:xs="http://www.w3.org/2001/XMLSchema" exclude-result-prefixes="xs" version="2.0">

    <xsl:template match="root">
        <xsl:value-of select="
            if(string-length(/root/element1/element2/element3/element4/element5) > 6) 
            then (substring(/root/element1/element2/element3/element4/element5, string-length(/root/element1/element2/element3/element4/element5)-5)) 
            else /root/element1/element2/element3/element4/element5"/>
    </xsl:template>

</xsl:stylesheet>

笔记:

标签: xmlxsltxpath

解决方案


推荐阅读