主要内容

matlab.io.xml.xpath.EvalResultType 类

R2026b

命名空间: matlab.io.xml.xpath

XPath 表达式计算的结果类型

描述

matlab.io.xml.xpath.EvalResultType 类枚举 XPath 表达式计算可以返回的值的类型。要指定计算的结果类型,请提供枚举成员作为 matlab.io.xml.xpath.Evaluator 对象的 evaluate 方法的最后一个参量。

枚举成员返回
matlab.io.xml.xpath.EvalResultType.Node

以 matlab.io.xml.dom 节点对象(如 matlab.io.xml.dom.Element 对象)形式返回 XPath 表达式选择的第一个节点。

matlab.io.xml.xpath.EvalResultType.NodeSet

以 matlab.io.xml.dom 节点对象向量形式返回由 XPath 表达式选择的节点。

matlab.io.xml.xpath.EvalResultType.Number

以双精度值形式返回 XPath 表达式选择的第一个节点的值。

matlab.io.xml.xpath.EvalResultType.Boolean

以逻辑值形式返回由 XPath 表达式选择的第一个节点的值。

matlab.io.xml.xpath.EvalResultType.String

以字符串标量形式返回 XPath 表达式选择的第一个节点的值。

示例

全部折叠

此示例计算一个 XPath 表达式,该表达式在文件 music.xml 中查找名为 Instrument 的节点。

文件 music.xml 包含以下 XML 标记:

<MusicalEnsemble>
	<Ensemble>
		<Music>Jazz</Music>
            <BandName>Kool Katz</BandName>
		<Instrumentation>
			<Instrument type="wind">Trumpet
            </Instrument>
			<Instrument type="percussion">Piano
                <pianotype>concert grand</pianotype>
            </Instrument>
			<Instrument type="percussion">Drums
                <drumkit>Bass drum</drumkit>
                <drumkit>Floor tom</drumkit>
                <drumkit>Snare drum</drumkit>
                <drumkit>Hi-hat</drumkit>
                <drumkit>Ride cymbal</drumkit>
            </Instrument>
			<Instrument type="string">Bass
                <basstype>upright</basstype>
            </Instrument>
		</Instrumentation>
	</Ensemble>
    <Musicians>
        <Name role="trumpeter">Miles</Name>
        <Name role="vocalist">Roger</Name>
        <Name role="pianist">Diana</Name>
        <Name role="drummer">George</Name>
        <Name role="bassist">John</Name>
    </Musicians>
</MusicalEnsemble>

定义 XPath 表达式并指定 XML 文件。

import matlab.io.xml.xpath.*

xpExpr = "//Instrument";
xmlFilePath = "music.xml";

计算 XPath 表达式,并以节点对象向量形式返回节点。

data = evaluate(Evaluator,xpExpr,xmlFilePath,EvalResultType.NodeSet)
data = 1×4 Element array with properties:
    TagName
    HasAttributes
    TextContent
    Children

版本历史记录

在 R2021a 中推出