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 XPath:获取节点中最后一个同级的值_Xml_Xpath_Siblings - Fatal编程技术网

Xml XPath:获取节点中最后一个同级的值

Xml XPath:获取节点中最后一个同级的值,xml,xpath,siblings,Xml,Xpath,Siblings,我正在尝试创建一个XPath表达式,以便在MS InfoPath中使用,以检索节点中最后一个同级的值。(希望我的措辞正确,因为我几乎没有使用过XPath) 我需要识别“RepeaterGroup”节点中“NamesEval”节点的最新实例。假设我会看看“史蒂夫”是否参加了最新的活动;我将使用contains(LatestEvent,“Steve”)XPath表达式检查这一点。如何让“LatestEvent”仅加载最新的“NamesEval”值 1. 2012-09-14 2. 2012-09-

我正在尝试创建一个XPath表达式,以便在MS InfoPath中使用,以检索节点中最后一个同级的值。(希望我的措辞正确,因为我几乎没有使用过XPath)

我需要识别“RepeaterGroup”节点中“NamesEval”节点的最新实例。假设我会看看“史蒂夫”是否参加了最新的活动;我将使用
contains(LatestEvent,“Steve”)
XPath表达式检查这一点。如何让“LatestEvent”仅加载最新的“NamesEval”值


1.
2012-09-14
2.
2012-09-15
史蒂夫
艾希礼
乔希
史提夫;艾希礼;乔希;
3.
2012-09-16
阿曼达
格雷格
史蒂夫
阿曼达;格雷格;史提夫;

编辑和回答


Choroba回答了下面的问题-以下是解决方案:
//my:RepeaterGroup[0=count(以下兄弟姐妹::my:RepeaterGroup)]///my:NamesEval

我不确定是否理解您的问题。如果试图验证最后一个NamesEval是否包含字符串“Steve”,则可以使用以下XPath表达式:

contains((//my:NamesEval)[last()],'Steve')

我不确定我是否理解你的问题。如果试图验证最后一个NamesEval是否包含字符串“Steve”,则可以使用以下XPath表达式:

contains((//my:NamesEval)[last()],'Steve')

Ugh-InfoPath表示“不支持位置和最后一个”。这就像记事本++XML工具XPath计算器中的champ。诅咒你微软!!!!!!!!它必须是网络支持的。。。这个表达式有希望,尽管我不完全理解它
//my:NamesEval[count(后面的兄弟姐妹::my:NamesEval)=0]
。在NPP++中,它仍然返回所有节点…@Chris:
NamesEval
s不是兄弟节点。好吧-我的术语是错误的(我想可能是这样);如何定义它们?非常感谢您的帮助。@Chris:maybuly
//my:RepeaterGroup[0=count(以下兄弟姐妹::my:RepeaterGroup)]///my:NamesEval
?Ugh-InfoPath说“不支持position和last”。这就像记事本++XML工具XPath计算器中的champ。诅咒你微软!!!!!!!!它必须是网络支持的。。。这个表达式有希望,尽管我不完全理解它
//my:NamesEval[count(后面的兄弟姐妹::my:NamesEval)=0]
。在NPP++中,它仍然返回所有节点…@Chris:
NamesEval
s不是兄弟节点。好吧-我的术语是错误的(我想可能是这样);如何定义它们?我很感谢您的帮助。@Chris:maybe
//my:RepeaterGroup[0=count(跟随兄弟姐妹::my:RepeaterGroup)]//my:NamesEval
?顺便说一句,您的解决方案更惯用的版本是
//my:RepeaterGroup[not(跟随兄弟姐妹姐妹::my:RepeaterGroup)]//my:NamesEval
。顺便说一句,您的解决方案更惯用的版本是
//my:RepeaterGroup[not(以下同级::my:RepeaterGroup)///my:NamesEval