Xml XPath查找包含节点名称的节点
假设我有以下XMLXml XPath查找包含节点名称的节点,xml,xpath,Xml,Xpath,假设我有以下XML <Table> <Row1> <Name>My Name</Name> <LastName>LastName</LastName> </Row1> <Row2> <Name>My Name2</Name> <LastName>LastName2</Las
<Table>
<Row1>
<Name>My Name</Name>
<LastName>LastName</LastName>
</Row1>
<Row2>
<Name>My Name2</Name>
<LastName>LastName2</LastName>
</Row2>
</Table>
我的名字
姓氏
我的名字
姓氏2
我知道这是糟糕的布局,我不能改变,不幸的是。因此,我想找到所有包含'Row'
我尝试过这个表达,但不幸的是它似乎不起作用:
//表//*[包含(,'Row')]
你知道我该怎么做吗
*[contains(.,'Row')]
检查其值包含子字符串行
的元素-如果您想要其名称包含该字符串的元素,则需要
*[contains(name(),'Row')]
或者如果你想更具体一些
*[starts-with(local-name(),'Row')]
只查找Row1
、Row2
、RowFoo
等,而不查找另一行
检查其值包含子字符串行
的元素-如果您想要其名称包含该字符串的元素,则需要
*[contains(name(),'Row')]
或者如果你想更具体一些
*[starts-with(local-name(),'Row')]
要仅查找Row1
,Row2
,RowFoo
等,而不是另一行
,,我将使用
//*[starts-with(local-name(),'Row')]
就像伊恩建议的那样
或者更好
//Table/*[starts-with(local-name(),'Row')]
我会用
//*[starts-with(local-name(),'Row')]
就像伊恩建议的那样
或者更好
//Table/*[starts-with(local-name(),'Row')]