Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xml 1260中的Xpath查询:<;代表D=";苏格兰和南方能源公司;F=";10“&燃气轮机;1260</代表>;在塔伦德_Xml_Xpath_Talend - Fatal编程技术网

Xml 1260中的Xpath查询:<;代表D=";苏格兰和南方能源公司;F=";10“&燃气轮机;1260</代表>;在塔伦德

Xml 1260中的Xpath查询:<;代表D=";苏格兰和南方能源公司;F=";10“&燃气轮机;1260</代表>;在塔伦德,xml,xpath,talend,Xml,Xpath,Talend,这是我第一次处理xml数据 我的数据如下所示: <Sp> <D> <Lo> <Period> <Rep D="SSE" F="10">1260</Rep> </Period> </Lo> </D> </Sp> 1260 我正在寻找值1260的xp

这是我第一次处理xml数据

我的数据如下所示:

<Sp>
    <D>
        <Lo>
            <Period>
                <Rep D="SSE" F="10">1260</Rep>
            </Period>
        </Lo>
    </D>
</Sp>

1260
我正在寻找值1260的xpath查询

我使用Talend并循环使用以Rep结尾的xpath。我已经能够检索所有其他数据,例如D,xpath查询是@D,但是如何获取值1260

有什么想法吗

提前谢谢

这个XPath

//Rep[.='1260']
//Rep[@D='SSE']
//Rep[@D='SSE']/text()
将选择字符串值为
1260
的所有
Rep
元素

这个XPath

//Rep[.='1260']
//Rep[@D='SSE']
//Rep[@D='SSE']/text()
将选择
D
属性值等于
SSE
的所有
Rep
元素

你要找的是
1260
本身,这个XPath

//Rep[.='1260']
//Rep[@D='SSE']
//Rep[@D='SSE']/text()

将选择上述
Rep
元素的所有文本节点子元素。

谢谢您的回答。这些值不断变化,无论D或F的值是什么,我都希望在选择之前先选择数字。在本例中,它是1260,但它是独立的。是否有方法每次提取此值?
//Rep/text()
将选择文档中所有
Rep
元素的文本节点子元素,而不考虑
@D
@F
,以及
Rep
的字符串值。这就是你想要的吗?//Rep/text()对我来说不正确,但我认为这是因为在Talend中,我已经在Rep周围循环了。。。最后,“text()”对我起了作用。谢谢你的帮助!如果上下文
Rep
,则
text()
将返回
Rep
的文本节点子节点,正确。或者,
string(.)
将返回
Rep
元素的字符串值。很高兴你让它工作了。